diff --git a/pkg/generator/changelog_generator.go b/pkg/generator/changelog_generator.go index 02d66312a330a55684e310faeac83d5364a4c0c2..0a3b1fe3be2dddbea96497c7906fb2de2dde18da 100644 --- a/pkg/generator/changelog_generator.go +++ b/pkg/generator/changelog_generator.go @@ -27,9 +27,21 @@ func formatCommit(c *semrel.Commit) string { var CGVERSION = "dev" -type DefaultChangelogGenerator struct{} +type DefaultChangelogGenerator struct { + prettifyOutput bool +} func (g *DefaultChangelogGenerator) Init(m map[string]string) error { + prettifyOutput := false + + prettifyConfig := m["prettify"] + + if prettifyConfig == "true" { + prettifyOutput = true + } + + g.prettifyOutput = prettifyOutput + return nil } @@ -41,7 +53,7 @@ func (g *DefaultChangelogGenerator) Version() string { return CGVERSION } -func (*DefaultChangelogGenerator) Generate(changelogConfig *generator.ChangelogGeneratorConfig) string { +func (g *DefaultChangelogGenerator) Generate(changelogConfig *generator.ChangelogGeneratorConfig) string { ret := fmt.Sprintf("## %s (%s)\n\n", changelogConfig.NewVersion, time.Now().UTC().Format("2006-01-02")) clTypes := NewChangelogTypes() for _, commit := range changelogConfig.Commits { @@ -62,7 +74,11 @@ func (*DefaultChangelogGenerator) Generate(changelogConfig *generator.ChangelogG if ct.Content == "" { continue } - ret += fmt.Sprintf("#### %s\n\n%s\n", ct.Text, ct.Content) + prettifyPrefix := "" + if g.prettifyOutput { + prettifyPrefix = ct.Emoji + } + ret += fmt.Sprintf("#### %s%s\n\n%s\n", prettifyPrefix, ct.Text, ct.Content) } return ret } diff --git a/pkg/generator/changelog_types.go b/pkg/generator/changelog_types.go index 4ea54e7d2073a6326d8034e45e4e31b4c75603d7..6c9a6ad7fab8971dc5806027e2e499f97ea7c6d6 100644 --- a/pkg/generator/changelog_types.go +++ b/pkg/generator/changelog_types.go @@ -33,61 +33,61 @@ var defaultTypes = ChangelogTypes{ { Type: "%%bc%%", Text: "Breaking Changes", - Emoji: "📣", + Emoji: "📣 ", }, { Type: "feat", Text: "Feature", - Emoji: "🎁", + Emoji: "🎁 ", }, { Type: "fix", Text: "Bug Fixes", - Emoji: "🐞", + Emoji: "🐞 ", }, { Type: "revert", Text: "Reverts", - Emoji: "🔙", + Emoji: "🔙 ", }, { Type: "perf", Text: "Performance Improvements", - Emoji: "📈", + Emoji: "📈 ", }, { Type: "docs", Text: "Documentation", - Emoji: "📄", + Emoji: "📄 ", }, { Type: "test", Text: "Tests", - Emoji: "🔎", + Emoji: "🔎 ", }, { Type: "refactor", Text: "Code Refactoring", - Emoji: "🔀", + Emoji: "🔀 ", }, { Type: "style", Text: "Styles", - Emoji: "🎨", + Emoji: "🎨 ", }, { Type: "chore", Text: "Chores", - Emoji: "🚧", + Emoji: "🚧 ", }, { Type: "build", Text: "Build", - Emoji: "📦", + Emoji: "📦 ", }, { Type: "ci", Text: "CI", - Emoji: "🔁", + Emoji: "🔁 ", }, }