diff --git a/powerline/bindings/zsh/__init__.py b/powerline/bindings/zsh/__init__.py index cbe5f957..1f93d272 100644 --- a/powerline/bindings/zsh/__init__.py +++ b/powerline/bindings/zsh/__init__.py @@ -178,7 +178,8 @@ class Prompt(object): width=zsh.columns() - zle_rprompt_indent, segment_info=segment_info, ): - r += line + '\n' + if line: + r += line + '\n' r += self.powerline.render( width=zsh.columns(), side=self.side, diff --git a/powerline/commands/main.py b/powerline/commands/main.py index 8c41b476..7a4751dc 100644 --- a/powerline/commands/main.py +++ b/powerline/commands/main.py @@ -159,7 +159,8 @@ def write_output(args, powerline, segment_info, write): segment_info=segment_info, mode=segment_info.get('mode', None), ): - write(line + '\n') + if line: + write(line + '\n') args.side = args.side[len('above'):] if args.side: diff --git a/powerline/renderer.py b/powerline/renderer.py index c03c42e8..13c7a04f 100644 --- a/powerline/renderer.py +++ b/powerline/renderer.py @@ -378,7 +378,9 @@ class Renderer(object): elif output_width: current_width = self._render_length(theme, segments, divider_widths) - rendered_highlighted = ''.join([segment['_rendered_hl'] for segment in self._render_segments(theme, segments)]) + self.hlstyle() + rendered_highlighted = ''.join([segment['_rendered_hl'] for segment in self._render_segments(theme, segments)]) + if rendered_highlighted: + rendered_highlighted += self.hlstyle() return construct_returned_value(rendered_highlighted, segments, current_width, output_raw, output_width)