mirror of
https://github.com/powerline/powerline.git
synced 2025-07-27 07:44:36 +02:00
Improve unicode handling of rendered segments
This commit is contained in:
parent
4cb0559be4
commit
90763f1fec
@ -93,8 +93,8 @@ class Powerline:
|
|||||||
)
|
)
|
||||||
|
|
||||||
return {
|
return {
|
||||||
'highlighted': rendered_highlighted,
|
'highlighted': rendered_highlighted.decode('utf-8'),
|
||||||
'raw': rendered_raw,
|
'raw': rendered_raw.decode('utf-8'),
|
||||||
}
|
}
|
||||||
|
|
||||||
rendered = render_segments(self.segments)
|
rendered = render_segments(self.segments)
|
||||||
@ -106,7 +106,7 @@ class Powerline:
|
|||||||
# Create an ordered list of segments that can be dropped
|
# Create an ordered list of segments that can be dropped
|
||||||
segments_priority = [segment for segment in sorted(self.segments, key=lambda segment: segment.priority, reverse=True) if segment.priority > 0]
|
segments_priority = [segment for segment in sorted(self.segments, key=lambda segment: segment.priority, reverse=True) if segment.priority > 0]
|
||||||
|
|
||||||
while len(rendered['raw'].decode('utf-8')) > width and len(segments_priority):
|
while len(rendered['raw']) > width and len(segments_priority):
|
||||||
self.segments.remove(segments_priority[0])
|
self.segments.remove(segments_priority[0])
|
||||||
segments_priority.pop(0)
|
segments_priority.pop(0)
|
||||||
|
|
||||||
@ -115,7 +115,7 @@ class Powerline:
|
|||||||
# Distribute the remaining space on the filler segments
|
# Distribute the remaining space on the filler segments
|
||||||
segments_fillers = [segment for segment in self.segments if segment.filler is True]
|
segments_fillers = [segment for segment in self.segments if segment.filler is True]
|
||||||
if segments_fillers:
|
if segments_fillers:
|
||||||
segments_fillers_contents = ' ' * int((width - len(rendered['raw'].decode('utf-8'))) / len(segments_fillers))
|
segments_fillers_contents = ' ' * int((width - len(rendered['raw'])) / len(segments_fillers))
|
||||||
for segment in segments_fillers:
|
for segment in segments_fillers:
|
||||||
segment.contents = segments_fillers_contents
|
segment.contents = segments_fillers_contents
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user