diff options
| author | Cyan <cyan.joeng@outlook.com> | 2022-12-28 12:43:35 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-12-28 15:43:35 +0300 |
| commit | 01d92285ef4402b188fa583d57f5d1a18c889d22 (patch) | |
| tree | 78fad00ad7895336497d27b36b79b160c0e5cb4d /lua/telescope/make_entry.lua | |
| parent | d7d3ea901580a7ef43aa9a2870ff36673eeadd6c (diff) | |
feat(git): git_commits shows the current branch graph (#2288)
Co-authored-by: Cyan Joeng <cyan.joeng@gmail.com>
Diffstat (limited to 'lua/telescope/make_entry.lua')
| -rw-r--r-- | lua/telescope/make_entry.lua | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/lua/telescope/make_entry.lua b/lua/telescope/make_entry.lua index 3843e5d..2532997 100644 --- a/lua/telescope/make_entry.lua +++ b/lua/telescope/make_entry.lua @@ -431,17 +431,27 @@ function make_entry.gen_from_git_commits(opts) return nil end - local sha, msg = string.match(entry, "([^ ]+) (.+)") + local marker, sha, msg = string.match(entry, "([*\\/| ]+) +([0-9a-f]*) +(.*)") + + if not sha then + marker = entry + sha = "" + msg = "" + end if not msg then - sha = entry msg = "<empty commit message>" end + marker, _ = string.gsub(marker, "\\", "+") + marker, _ = string.gsub(marker, "/", "-") + marker, _ = string.gsub(marker, "+", "/") + marker, _ = string.gsub(marker, "-", "\\") + return make_entry.set_default_entry_mt({ value = sha, - ordinal = sha .. " " .. msg, - msg = msg, + ordinal = marker .. " " .. sha .. " " .. msg, + msg = marker .. " " .. msg, display = make_display, current_file = opts.current_file, }, opts) |
