1
0
mirror of https://github.com/jesseduffield/lazygit.git synced 2025-02-09 13:47:11 +02:00

Visualize the "ignore whitespace" state in the subtitle of the diff view

This commit is contained in:
Stefan Haller 2023-05-18 15:29:37 +02:00 committed by Jesse Duffield
parent 7d4bfb6621
commit 64b2685c2d
9 changed files with 38 additions and 17 deletions

View File

@ -126,8 +126,9 @@ func (self *CommitFilesController) GetOnRenderToMain() func() error {
return self.c.RenderToMainViews(types.RefreshMainOpts{ return self.c.RenderToMainViews(types.RefreshMainOpts{
Pair: pair, Pair: pair,
Main: &types.ViewUpdateOpts{ Main: &types.ViewUpdateOpts{
Title: self.c.Tr.Patch, Title: self.c.Tr.Patch,
Task: task, SubTitle: self.c.Helpers().Diff.IgnoringWhitespaceSubTitle(),
Task: task,
}, },
Secondary: secondaryPatchPanelUpdateOpts(self.c), Secondary: secondaryPatchPanelUpdateOpts(self.c),
}) })

View File

@ -174,8 +174,9 @@ func (self *FilesController) GetOnRenderToMain() func() error {
return self.c.RenderToMainViews(types.RefreshMainOpts{ return self.c.RenderToMainViews(types.RefreshMainOpts{
Pair: self.c.MainViewPairs().Normal, Pair: self.c.MainViewPairs().Normal,
Main: &types.ViewUpdateOpts{ Main: &types.ViewUpdateOpts{
Title: self.c.Tr.DiffTitle, Title: self.c.Tr.DiffTitle,
Task: types.NewRenderStringTask(self.c.Tr.NoChangedFiles), SubTitle: self.c.Helpers().Diff.IgnoringWhitespaceSubTitle(),
Task: types.NewRenderStringTask(self.c.Tr.NoChangedFiles),
}, },
}) })
} }
@ -209,8 +210,9 @@ func (self *FilesController) GetOnRenderToMain() func() error {
refreshOpts := types.RefreshMainOpts{ refreshOpts := types.RefreshMainOpts{
Pair: pair, Pair: pair,
Main: &types.ViewUpdateOpts{ Main: &types.ViewUpdateOpts{
Task: types.NewRunPtyTask(cmdObj.GetCmd()), Task: types.NewRunPtyTask(cmdObj.GetCmd()),
Title: title, SubTitle: self.c.Helpers().Diff.IgnoringWhitespaceSubTitle(),
Title: title,
}, },
} }
@ -223,8 +225,9 @@ func (self *FilesController) GetOnRenderToMain() func() error {
} }
refreshOpts.Secondary = &types.ViewUpdateOpts{ refreshOpts.Secondary = &types.ViewUpdateOpts{
Title: title, Title: title,
Task: types.NewRunPtyTask(cmdObj.GetCmd()), SubTitle: self.c.Helpers().Diff.IgnoringWhitespaceSubTitle(),
Task: types.NewRunPtyTask(cmdObj.GetCmd()),
} }
} }

View File

@ -59,8 +59,9 @@ func (self *DiffHelper) RenderDiff() error {
return self.c.RenderToMainViews(types.RefreshMainOpts{ return self.c.RenderToMainViews(types.RefreshMainOpts{
Pair: self.c.MainViewPairs().Normal, Pair: self.c.MainViewPairs().Normal,
Main: &types.ViewUpdateOpts{ Main: &types.ViewUpdateOpts{
Title: "Diff", Title: "Diff",
Task: task, SubTitle: self.IgnoringWhitespaceSubTitle(),
Task: task,
}, },
}) })
} }
@ -112,3 +113,11 @@ func (self *DiffHelper) WithDiffModeCheck(f func() error) error {
return f() return f()
} }
func (self *DiffHelper) IgnoringWhitespaceSubTitle() string {
if self.c.State().GetIgnoreWhitespaceInDiffView() {
return self.c.Tr.IgnoreWhitespaceDiffViewSubTitle
}
return ""
}

View File

@ -176,8 +176,9 @@ func (self *LocalCommitsController) GetOnRenderToMain() func() error {
return self.c.RenderToMainViews(types.RefreshMainOpts{ return self.c.RenderToMainViews(types.RefreshMainOpts{
Pair: self.c.MainViewPairs().Normal, Pair: self.c.MainViewPairs().Normal,
Main: &types.ViewUpdateOpts{ Main: &types.ViewUpdateOpts{
Title: "Patch", Title: "Patch",
Task: task, SubTitle: self.c.Helpers().Diff.IgnoringWhitespaceSubTitle(),
Task: task,
}, },
Secondary: secondaryPatchPanelUpdateOpts(self.c), Secondary: secondaryPatchPanelUpdateOpts(self.c),
}) })

View File

@ -74,8 +74,9 @@ func (self *StashController) GetOnRenderToMain() func() error {
return self.c.RenderToMainViews(types.RefreshMainOpts{ return self.c.RenderToMainViews(types.RefreshMainOpts{
Pair: self.c.MainViewPairs().Normal, Pair: self.c.MainViewPairs().Normal,
Main: &types.ViewUpdateOpts{ Main: &types.ViewUpdateOpts{
Title: "Stash", Title: "Stash",
Task: task, SubTitle: self.c.Helpers().Diff.IgnoringWhitespaceSubTitle(),
Task: task,
}, },
}) })
}) })

View File

@ -46,8 +46,9 @@ func (self *SubCommitsController) GetOnRenderToMain() func() error {
return self.c.RenderToMainViews(types.RefreshMainOpts{ return self.c.RenderToMainViews(types.RefreshMainOpts{
Pair: self.c.MainViewPairs().Normal, Pair: self.c.MainViewPairs().Normal,
Main: &types.ViewUpdateOpts{ Main: &types.ViewUpdateOpts{
Title: "Commit", Title: "Commit",
Task: task, SubTitle: self.c.Helpers().Diff.IgnoringWhitespaceSubTitle(),
Task: task,
}, },
}) })
}) })

View File

@ -66,6 +66,8 @@ func (gui *Gui) RefreshMainView(opts *types.ViewUpdateOpts, context types.Contex
view.Title = opts.Title view.Title = opts.Title
} }
view.Subtitle = opts.SubTitle
if err := gui.runTaskForView(view, opts.Task); err != nil { if err := gui.runTaskForView(view, opts.Task); err != nil {
gui.c.Log.Error(err) gui.c.Log.Error(err)
return nil return nil

View File

@ -21,7 +21,8 @@ type MainViewPairs struct {
} }
type ViewUpdateOpts struct { type ViewUpdateOpts struct {
Title string Title string
SubTitle string
Task UpdateTask Task UpdateTask
} }

View File

@ -481,6 +481,7 @@ type TranslationSet struct {
RandomTip string RandomTip string
SelectParentCommitForMerge string SelectParentCommitForMerge string
ToggleWhitespaceInDiffView string ToggleWhitespaceInDiffView string
IgnoreWhitespaceDiffViewSubTitle string
IgnoringWhitespaceInDiffView string IgnoringWhitespaceInDiffView string
ShowingWhitespaceInDiffView string ShowingWhitespaceInDiffView string
IgnoreWhitespaceNotSupportedHere string IgnoreWhitespaceNotSupportedHere string
@ -1153,6 +1154,7 @@ func EnglishTranslationSet() TranslationSet {
RandomTip: "Random Tip", RandomTip: "Random Tip",
SelectParentCommitForMerge: "Select parent commit for merge", SelectParentCommitForMerge: "Select parent commit for merge",
ToggleWhitespaceInDiffView: "Toggle whether or not whitespace changes are shown in the diff view", ToggleWhitespaceInDiffView: "Toggle whether or not whitespace changes are shown in the diff view",
IgnoreWhitespaceDiffViewSubTitle: "(ignoring whitespace)",
IgnoringWhitespaceInDiffView: "Whitespace will be ignored in the diff view", IgnoringWhitespaceInDiffView: "Whitespace will be ignored in the diff view",
ShowingWhitespaceInDiffView: "Whitespace will be shown in the diff view", ShowingWhitespaceInDiffView: "Whitespace will be shown in the diff view",
IgnoreWhitespaceNotSupportedHere: "Ignoring whitespace is not supported in this view", IgnoreWhitespaceNotSupportedHere: "Ignoring whitespace is not supported in this view",