aboutsummaryrefslogtreecommitdiff
path: root/modules/textadept
diff options
context:
space:
mode:
Diffstat (limited to 'modules/textadept')
-rw-r--r--modules/textadept/find.lua7
1 files changed, 5 insertions, 2 deletions
diff --git a/modules/textadept/find.lua b/modules/textadept/find.lua
index e98b1403..e04bf786 100644
--- a/modules/textadept/find.lua
+++ b/modules/textadept/find.lua
@@ -255,6 +255,9 @@ function M.find_in_files(dir, filter)
}
if not dir then return end
end
+ if not assert_type(filter, 'string/table/nil', 2) then
+ filter = M.find_in_files_filters[dir] or lfs.default_filter
+ end
if buffer._type ~= _L['[Files Found Buffer]'] then preferred_view = view end
ui.silent_print = false
@@ -265,10 +268,10 @@ function M.find_in_files(dir, filter)
-- Determine which files to search.
local filenames, utf8_filenames = {}, {}
- lfs.dir_foreach(dir, function(filename)
+ for filename in lfs.walk(dir, filter) do
filenames[#filenames + 1] = filename
utf8_filenames[#utf8_filenames + 1] = filename:iconv('UTF-8', _CHARSET)
- end, filter or M.find_in_files_filters[dir] or lfs.default_filter)
+ end
-- Perform the search in a temporary buffer and print results.
local orig_buffer, buffer = buffer, buffer.new()