Skip to content

Commit 95907fd

Browse files
committed
🐛 fix: fixes #37
1 parent 2463bab commit 95907fd

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

lua/cokeline/buffers.lua

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,24 +100,30 @@ end
100100
---@param bufnr bufnr
101101
---@return string
102102
local get_pick_letter = function(filename, bufnr)
103+
-- If the bufnr has already a letter associated to it return that.
103104
if gl_mut_taken_pick_letters[bufnr] then
104105
return gl_mut_taken_pick_letters[bufnr]
105106
end
106107

108+
-- If the initial letter of the filename is valid and it hasn't already been
109+
-- assigned return that.
107110
local init_letter = filename:sub(1, 1)
108-
if gl_mut_valid_pick_letters:find(init_letter) then
111+
if gl_mut_valid_pick_letters:find(init_letter, nil, true) then
109112
gl_mut_valid_pick_letters = gl_mut_valid_pick_letters:gsub(init_letter, '')
110113
gl_mut_taken_pick_letters[bufnr] = init_letter
111114
return init_letter
112115
end
113116

117+
-- Return the first valid letter if there is one.
114118
if #gl_mut_valid_pick_letters > 0 then
115119
local first_valid = gl_mut_valid_pick_letters:sub(1, 1)
116120
gl_mut_valid_pick_letters = gl_mut_valid_pick_letters:sub(2)
117121
gl_mut_taken_pick_letters[bufnr] = first_valid
118122
return first_valid
119123
end
120124

125+
-- Finally, just return a '?' (this is rarely reached, you'd need to have
126+
-- opened 54 buffers in the same session).
121127
return '?'
122128
end
123129

0 commit comments

Comments
 (0)