From 672f0d32e322b79661b5d7959887adaa9e41ad98 Mon Sep 17 00:00:00 2001 From: Daniil Rozanov Date: Fri, 29 Mar 2024 04:37:56 +0300 Subject: feat: build from current variant --- lua/cmake-explorer/telescope/make_entry.lua | 57 +++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 lua/cmake-explorer/telescope/make_entry.lua (limited to 'lua/cmake-explorer/telescope/make_entry.lua') diff --git a/lua/cmake-explorer/telescope/make_entry.lua b/lua/cmake-explorer/telescope/make_entry.lua new file mode 100644 index 0000000..cc919bd --- /dev/null +++ b/lua/cmake-explorer/telescope/make_entry.lua @@ -0,0 +1,57 @@ +local make_entry = require("telescope.make_entry") +local entry_display = require("telescope.pickers.entry_display") +local config = require("cmake-explorer.config") + +local M = {} + +M.gen_from_configure = function(opts) + local project = require("cmake-explorer").project + local displayer = entry_display.create({ + separator = " ", + items = { + { width = project.display.short_len + 5 }, + { remaining = true }, + }, + }) + local make_display = function(entry) + vim.print(entry) + return displayer({ + { entry.value.display.short, "TelescopeResultsIdentifier" }, + { entry.value.display.long, "TelescopeResultsComment" }, + }) + end + return function(entry) + return make_entry.set_default_entry_mt({ + value = entry, + ordinal = table.concat(entry.short, config.variants_display.short_sep), + display = make_display, + }, opts) + end +end + +M.gen_from_build = function(opts) + local project = require("cmake-explorer").project + local displayer = entry_display.create({ + separator = " ", + items = { + { width = project.display.short_len + 5 }, + { remaining = true }, + }, + }) + local make_display = function(entry) + vim.print(entry) + return displayer({ + { entry.value.display.short, "TelescopeResultsIdentifier" }, + { entry.value.display.long, "TelescopeResultsComment" }, + }) + end + return function(entry) + return make_entry.set_default_entry_mt({ + value = entry, + ordinal = table.concat(entry.short, config.variants_display.short_sep), + display = make_display, + }, opts) + end +end + +return M -- cgit v1.2.3