Ejemplo n.º 1
0
def run(thread_shutdown_event=None,
        pl_shutdown_event=None,
        pl_config_loader=None,
        interval=None):
    powerline = Powerline(
        'wm',
        renderer_module='pango_markup',
        shutdown_event=pl_shutdown_event,
        config_loader=pl_config_loader,
    )
    powerline.update_renderer()

    if not thread_shutdown_event:
        thread_shutdown_event = powerline.shutdown_event

    while not thread_shutdown_event.is_set():
        # powerline.update_interval may change over time
        used_interval = interval or powerline.update_interval
        start_time = monotonic()
        s = powerline.render(side='right')
        request = 'powerline_widget:set_markup(\'' + s.translate({
            '\'': '\\\'',
            '\\': '\\\\'
        }) + '\')\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)
        thread_shutdown_event.wait(
            max(used_interval - (monotonic() - start_time), 0.1))
Ejemplo n.º 2
0
import time

from threading import Lock

import i3

from powerline import Powerline
from powerline.lib.monotonic import monotonic

if __name__ == '__main__':
    name = 'wm'
    if len(sys.argv) > 1:
        name = sys.argv[1]

    powerline = Powerline(name, renderer_module='i3bar')
    powerline.update_renderer()

    interval = 0.5

    print('{"version": 1, "custom_workspace": true}')
    print('[')
    print('\t[[],[]]')

    lock = Lock()

    def render(event=None, data=None, sub=None):
        global lock
        with lock:
            s = '[\n' + powerline.render(side='right')[:-2] + '\n]\n'
            s += ',[\n' + powerline.render(side='left')[:-2] + '\n]'
            print(',[\n' + s + '\n]')
Ejemplo n.º 3
0
# vim:fileencoding=utf-8:noet
from __future__ import print_function

from powerline import Powerline
from powerline.lib.monotonic import monotonic

import sys
import time
import i3
from threading import Lock

name = 'wm'
if len( sys.argv ) > 1:
	name = sys.argv[1]
powerline = Powerline(name, renderer_module='i3bgbar')
powerline.update_renderer()

interval = 0.5

print( '{"version": 1, "custom_workspace": true}' )
print( '[' )
print( '	[[],[]]' )

lock = Lock()

def render( event=None, data=None, sub=None ):
	global lock
	with lock:
		s  = '[\n' + powerline.render(side='right')[:-2] + '\n]\n'
		s += ',[\n' + powerline.render(side='left' )[:-2] + '\n]'
		print( ',[\n' + s + '\n]' )