Detailed changes
@@ -19,9 +19,7 @@ import (
"github.com/muesli/termenv"
)
-var (
- waitBeforeLoading = time.Millisecond * 100
-)
+var waitBeforeLoading = time.Millisecond * 100
type logView int
@@ -437,10 +435,10 @@ func (l *Log) renderCommit(c *ggit.Commit) string {
// sanitize commit message from CRLF
msg := strings.ReplaceAll(c.Message, "\r\n", "\n")
s.WriteString(fmt.Sprintf("%s\n%s\n%s\n%s\n",
- l.common.Styles.LogCommitHash.Render("commit "+c.ID.String()),
- l.common.Styles.LogCommitAuthor.Render(fmt.Sprintf("Author: %s <%s>", c.Author.Name, c.Author.Email)),
- l.common.Styles.LogCommitDate.Render("Date: "+c.Committer.When.Format(time.UnixDate)),
- l.common.Styles.LogCommitBody.Render(msg),
+ l.common.Styles.Log.CommitHash.Render("commit "+c.ID.String()),
+ l.common.Styles.Log.CommitAuthor.Render(fmt.Sprintf("Author: %s <%s>", c.Author.Name, c.Author.Email)),
+ l.common.Styles.Log.CommitDate.Render("Date: "+c.Committer.When.Format(time.UnixDate)),
+ l.common.Styles.Log.CommitBody.Render(msg),
))
return wrap.String(s.String(), l.common.Width-2)
}
@@ -451,8 +449,8 @@ func (l *Log) renderSummary(diff *ggit.Diff) string {
ch := strings.Split(line, "|")
if len(ch) > 1 {
adddel := ch[len(ch)-1]
- adddel = strings.ReplaceAll(adddel, "+", l.common.Styles.LogCommitStatsAdd.Render("+"))
- adddel = strings.ReplaceAll(adddel, "-", l.common.Styles.LogCommitStatsDel.Render("-"))
+ adddel = strings.ReplaceAll(adddel, "+", l.common.Styles.Log.CommitStatsAdd.Render("+"))
+ adddel = strings.ReplaceAll(adddel, "-", l.common.Styles.Log.CommitStatsDel.Render("-"))
stats[i] = strings.Join(ch[:len(ch)-1], "|") + "|" + adddel
}
}
@@ -76,7 +76,7 @@ func (d LogItemDelegate) Update(msg tea.Msg, m *list.Model) tea.Cmd {
// Render renders the item. Implements list.ItemDelegate.
func (d LogItemDelegate) Render(w io.Writer, m list.Model, index int, listItem list.Item) {
- styles := d.common.Styles
+ styles := d.common.Styles.Log
i, ok := listItem.(LogItem)
if !ok {
return
@@ -88,17 +88,17 @@ func (d LogItemDelegate) Render(w io.Writer, m list.Model, index int, listItem l
var titleStyler,
descStyler,
keywordStyler func(string) string
- style := styles.LogItemInactive
+ style := styles.ItemInactive
if index == m.Index() {
- titleStyler = styles.LogItemTitleActive.Render
- descStyler = styles.LogItemDescActive.Render
- keywordStyler = styles.LogItemKeywordActive.Render
- style = styles.LogItemActive
+ titleStyler = styles.ItemTitleActive.Render
+ descStyler = styles.ItemDescActive.Render
+ keywordStyler = styles.ItemKeywordActive.Render
+ style = styles.ItemActive
} else {
- titleStyler = styles.LogItemTitleInactive.Render
- descStyler = styles.LogItemDescInactive.Render
- keywordStyler = styles.LogItemKeywordInactive.Render
+ titleStyler = styles.ItemTitleInactive.Render
+ descStyler = styles.ItemDescInactive.Render
+ keywordStyler = styles.ItemKeywordInactive.Render
}
hash := i.Commit.ID.String()[:7]
@@ -113,7 +113,7 @@ func (d LogItemDelegate) Render(w io.Writer, m list.Model, index int, listItem l
// title truncation symbol (1)
9),
)
- hashStyle := styles.LogItemHash.Copy().
+ hashStyle := styles.ItemHash.Copy().
Align(lipgloss.Right).
PaddingLeft(1).
Width(m.Width() -
@@ -44,25 +44,27 @@ type Styles struct {
AboutNoReadme lipgloss.Style
- LogItem lipgloss.Style
- LogItemSelector lipgloss.Style
- LogItemActive lipgloss.Style
- LogItemInactive lipgloss.Style
- LogItemHash lipgloss.Style
- LogItemTitleInactive lipgloss.Style
- LogItemTitleActive lipgloss.Style
- LogItemDescInactive lipgloss.Style
- LogItemDescActive lipgloss.Style
- LogItemKeywordActive lipgloss.Style
- LogItemKeywordInactive lipgloss.Style
- LogCommit lipgloss.Style
- LogCommitHash lipgloss.Style
- LogCommitAuthor lipgloss.Style
- LogCommitDate lipgloss.Style
- LogCommitBody lipgloss.Style
- LogCommitStatsAdd lipgloss.Style
- LogCommitStatsDel lipgloss.Style
- LogPaginator lipgloss.Style
+ Log struct {
+ Item lipgloss.Style
+ ItemSelector lipgloss.Style
+ ItemActive lipgloss.Style
+ ItemInactive lipgloss.Style
+ ItemHash lipgloss.Style
+ ItemTitleInactive lipgloss.Style
+ ItemTitleActive lipgloss.Style
+ ItemDescInactive lipgloss.Style
+ ItemDescActive lipgloss.Style
+ ItemKeywordActive lipgloss.Style
+ ItemKeywordInactive lipgloss.Style
+ Commit lipgloss.Style
+ CommitHash lipgloss.Style
+ CommitAuthor lipgloss.Style
+ CommitDate lipgloss.Style
+ CommitBody lipgloss.Style
+ CommitStatsAdd lipgloss.Style
+ CommitStatsDel lipgloss.Style
+ Paginator lipgloss.Style
+ }
RefItemSelector lipgloss.Style
RefItemActive lipgloss.Style
@@ -209,60 +211,61 @@ func DefaultStyles() *Styles {
MarginLeft(2).
Foreground(lipgloss.Color("#626262"))
- s.LogItemInactive = lipgloss.NewStyle().
+ s.Log.ItemInactive = lipgloss.NewStyle().
Border(lipgloss.Border{
Left: " ",
}, false, false, false, true).
PaddingLeft(1)
- s.LogItemActive = s.LogItemInactive.Copy().
+ s.Log.ItemActive = s.Log.ItemInactive.Copy().
Border(lipgloss.Border{
Left: "┃",
}, false, false, false, true).
BorderForeground(selectorColor)
- s.LogItemSelector = s.LogItemInactive.Copy().
+ s.Log.ItemSelector = s.Log.ItemInactive.Copy().
Width(1).
Foreground(lipgloss.Color("#B083EA"))
- s.LogItemHash = s.LogItemInactive.Copy().
+ s.Log.ItemHash = s.Log.ItemInactive.Copy().
Foreground(lipgloss.Color("#A3A322"))
- s.LogItemTitleInactive = lipgloss.NewStyle().
+ s.Log.ItemTitleInactive = lipgloss.NewStyle().
Foreground(lipgloss.Color("#B083EA"))
- s.LogItemTitleActive = lipgloss.NewStyle().
+ s.Log.ItemTitleActive = lipgloss.NewStyle().
Foreground(highlightColor).
Bold(true)
- s.LogItemDescInactive = lipgloss.NewStyle()
+ s.Log.ItemDescInactive = lipgloss.NewStyle().
+ Foreground(lipgloss.Color("246"))
- s.LogItemDescActive = lipgloss.NewStyle().
+ s.Log.ItemDescActive = lipgloss.NewStyle().
Foreground(lipgloss.Color("95"))
- s.LogItemKeywordActive = s.LogItemDescActive.Copy().
+ s.Log.ItemKeywordActive = s.Log.ItemDescActive.Copy().
Foreground(highlightColorDim)
- s.LogCommit = lipgloss.NewStyle().
+ s.Log.Commit = lipgloss.NewStyle().
Margin(0, 2)
- s.LogCommitHash = lipgloss.NewStyle().
+ s.Log.CommitHash = lipgloss.NewStyle().
Foreground(lipgloss.Color("#A3A322")).
Bold(true)
- s.LogCommitBody = lipgloss.NewStyle().
+ s.Log.CommitBody = lipgloss.NewStyle().
MarginTop(1).
MarginLeft(2)
- s.LogCommitStatsAdd = lipgloss.NewStyle().
+ s.Log.CommitStatsAdd = lipgloss.NewStyle().
Foreground(lipgloss.Color("#00D787")).
Bold(true)
- s.LogCommitStatsDel = lipgloss.NewStyle().
+ s.Log.CommitStatsDel = lipgloss.NewStyle().
Foreground(lipgloss.Color("#FD5B5B")).
Bold(true)
- s.LogPaginator = lipgloss.NewStyle().
+ s.Log.Paginator = lipgloss.NewStyle().
Margin(0).
Align(lipgloss.Center)
@@ -288,7 +291,7 @@ func DefaultStyles() *Styles {
Bold(true).
Foreground(highlightColor)
- s.RefPaginator = s.LogPaginator.Copy()
+ s.RefPaginator = s.Log.Paginator.Copy()
s.TreeItemSelector = s.TreeItemInactive.Copy().
Width(1).
@@ -322,7 +325,7 @@ func DefaultStyles() *Styles {
s.TreeFileContent = lipgloss.NewStyle()
- s.TreePaginator = s.LogPaginator.Copy()
+ s.TreePaginator = s.Log.Paginator.Copy()
s.TreeNoItems = s.AboutNoReadme.Copy()