diff --git a/pkg/commands/patch_manager.go b/pkg/commands/patch_manager.go index 3f0f0ac06..5191c2348 100644 --- a/pkg/commands/patch_manager.go +++ b/pkg/commands/patch_manager.go @@ -2,7 +2,6 @@ package commands import ( "sort" - "strings" "github.com/jesseduffield/lazygit/pkg/utils" "github.com/sirupsen/logrus" @@ -145,7 +144,13 @@ func (p *PatchManager) RenderEachFilePatch(plain bool) []string { } func (p *PatchManager) RenderAggregatedPatchColored(plain bool) string { - return strings.Join(p.RenderEachFilePatch(plain), "\n") + result := "" + for _, patch := range p.RenderEachFilePatch(plain) { + if patch != "" { + result += patch + "\n" + } + } + return result } func (p *PatchManager) GetFileStatus(filename string) int { diff --git a/pkg/commands/patch_parser.go b/pkg/commands/patch_parser.go index 06781c8cf..e88a43f32 100644 --- a/pkg/commands/patch_parser.go +++ b/pkg/commands/patch_parser.go @@ -194,7 +194,11 @@ func (p *PatchParser) Render(firstLineIndex int, lastLineIndex int, incLineIndic included := utils.IncludesInt(incLineIndices, index) renderedLines[index] = patchLine.render(selected, included) } - return strings.Join(renderedLines, "\n") + result := strings.Join(renderedLines, "\n") + if strings.TrimSpace(utils.Decolorise(result)) == "" { + return "" + } + return result } // GetNextStageableLineIndex takes a line index and returns the line index of the next stageable line