diff options
Diffstat (limited to 'scripts/lua/mason-scripts/templates/parse_commit.lua')
| -rw-r--r-- | scripts/lua/mason-scripts/templates/parse_commit.lua | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/scripts/lua/mason-scripts/templates/parse_commit.lua b/scripts/lua/mason-scripts/templates/parse_commit.lua new file mode 100644 index 00000000..2f7e7358 --- /dev/null +++ b/scripts/lua/mason-scripts/templates/parse_commit.lua @@ -0,0 +1,16 @@ +local _ = require "mason-core.functional" + +local linkify = _.gsub([[#(%d+)]], function(issue) + return ("[#%d](https://github.com/williamboman/mason.nvim/issues/%d)"):format(issue, issue) +end) + +return { + parse_commit = function(commit_str) + local commit = + _.compose(_.zip_table { "sha", "commit_date", "author_name", "subject" }, _.split "\t")(commit_str) + + return (_.dedent [[ + [`%s`](https://github.com/williamboman/mason.nvim/commit/%s) %s - %s by %s + ]]):format(commit.sha, commit.sha, commit.commit_date, linkify(commit.subject), commit.author_name) + end, +} |
