diff --git a/lua/telescope/builtin.lua b/lua/telescope/builtin.lua index d4030ae..a84a46b 100644 --- a/lua/telescope/builtin.lua +++ b/lua/telescope/builtin.lua @@ -486,16 +486,14 @@ end builtin.help_tags = function(opts) opts = opts or {} - local sourced_file = require('plenary.debug_utils').sourced_filepath() - local base_directory = vim.fn.fnamemodify(sourced_file, ":h:h:h") - local file = base_directory .. "/data/help/tags" - local tags = {} - local f = assert(io.open(file, "rb")) - for line in f:lines() do - table.insert(tags, line) - end - f:close() + for _, file in pairs(vim.fn.findfile('doc/tags', vim.o.runtimepath, -1)) do + local f = assert(io.open(file, "rb")) + for line in f:lines() do + table.insert(tags, line) + end + f:close() + end pickers.new(opts, { prompt_title = 'Help', diff --git a/lua/telescope/make_entry.lua b/lua/telescope/make_entry.lua index 7707122..c19acde 100644 --- a/lua/telescope/make_entry.lua +++ b/lua/telescope/make_entry.lua @@ -365,38 +365,15 @@ function make_entry.gen_from_treesitter(opts) end end -function make_entry.gen_from_tagfile(opts) - local help_entry, version - local delim = string.char(7) +function make_entry.gen_from_tagfile(_) + local delim = string.char(9) local make_display = function(line) - help_entry = "" - display = "" - version = "" - - line = line .. delim - for section in line:gmatch("(.-)" .. delim) do - if section:find("^vim:") == nil then - local ver = section:match("^neovim:(.*)") - if ver == nil then - help_entry = section - else - version = ver:sub(1, -2) - end - end - end - - result = {} - if version ~= "" then -- some Vim only entries are unversioned - if opts.show_version then - result.display = string.format("%s [%s]", help_entry, version) - else - result.display = help_entry - end - result.value = help_entry - end - - return result + local help_entry = (line..delim):match("(.-)" .. delim) + return { + display = help_entry, + value = help_entry + } end return function(line)