From 5d78b7e1e60b5372060ce3df59698274cbb8474a Mon Sep 17 00:00:00 2001 From: James Trew Date: Wed, 3 Jan 2024 22:12:27 -0500 Subject: [PATCH] fix(builtin.buffers): better buffer in cwd check Previously, using `string.find`, certain characters were taken as regex special characters leading to bad matches. New approach takes bufname truncated to the length of cwd and compares the two strings. --- lua/telescope/builtin/__internal.lua | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lua/telescope/builtin/__internal.lua b/lua/telescope/builtin/__internal.lua index 9926c36..84c65b0 100644 --- a/lua/telescope/builtin/__internal.lua +++ b/lua/telescope/builtin/__internal.lua @@ -886,7 +886,8 @@ internal.buffers = function(opts) if cwd:sub(-1) ~= Path.path.sep then cwd = cwd .. Path.path.sep end - return vim.api.nvim_buf_get_name(bufnr):find(cwd) == nil + local bufname_prefix = vim.api.nvim_buf_get_name(bufnr):sub(1, #cwd) + return bufname_prefix ~= cwd end local bufnrs = vim.tbl_filter(function(bufnr)