From 9d69abc45a29734a0960efe1c3ddffbd006e9096 Mon Sep 17 00:00:00 2001 From: hypervtechnics Date: Thu, 3 Mar 2022 12:54:07 +0100 Subject: [PATCH] feat: ability to only select a subset of the message issue: #45 --- sv/message.go | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/sv/message.go b/sv/message.go index 47adec8..b5eb5c5 100644 --- a/sv/message.go +++ b/sv/message.go @@ -202,7 +202,17 @@ func (p MessageProcessorImpl) Format(msg CommitMessage) (string, string, string) // Parse a commit message. func (p MessageProcessorImpl) Parse(subject, body string) CommitMessage { - commitType, scope, description, hasBreakingChange := parseSubjectMessage(subject) + + filteredSubject := subject + if p.messageCfg.MessageSelector != "" { + subjectRegex := regexp.MustCompile(p.messageCfg.MessageSelector) + subjectMessageIndex := regex.SubexpIndex("message") + subjectMatch := regex.FindStringSubmatch(subject) + + filteredSubject = subjectMatch[subjectMessageIndex] + } + + commitType, scope, description, hasBreakingChange := parseSubjectMessage(filteredSubject) metadata := make(map[string]string) for key, mdCfg := range p.messageCfg.Footer {