From c5280b8d083ee3b52eeab59036f2eaf095768357 Mon Sep 17 00:00:00 2001 From: "asep.komarudin" Date: Fri, 7 Jun 2024 20:15:49 +0700 Subject: [PATCH] add: telescope theme --- lazy-lock.json | 2 +- lua/custom/default.lua | 9 + lua/plugins/telescope.lua | 319 +++++++++++++++++++----------------- lua/plugins/vertcolumn.lua | 21 +++ lua/user/utils/whichkey.lua | 3 +- 5 files changed, 199 insertions(+), 155 deletions(-) create mode 100644 lua/plugins/vertcolumn.lua diff --git a/lazy-lock.json b/lazy-lock.json index e7e23cf..a687f45 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -11,7 +11,6 @@ "cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" }, "code_runner.nvim": { "branch": "main", "commit": "6c5bfe44a6c7523350cd706e6b3b8101166eed99" }, "codeium.nvim": { "branch": "main", "commit": "d3b88eb3aa1de6da33d325c196b8a41da2bcc825" }, - "deadcolumn.nvim": { "branch": "master", "commit": "d3faae957d7ebeb443c25ecb1ad286fc4f74964b" }, "dracula.nvim": { "branch": "main", "commit": "8d8bddb8814c3e7e62d80dda65a9876f97eb699c" }, "dressing.nvim": { "branch": "master", "commit": "572314728cb1ce012e825fd66331f52c94acac12" }, "friendly-snippets": { "branch": "main", "commit": "e11b09bf10706bb74e16e4c3d11b2274d62e687f" }, @@ -53,6 +52,7 @@ "vim-illuminate": { "branch": "master", "commit": "5eeb7951fc630682c322e88a9bbdae5c224ff0aa" }, "vim-startuptime": { "branch": "master", "commit": "97a88e688482a09c3c4b777d07b509b328a5ec29" }, "vim-visual-multi": { "branch": "master", "commit": "b84a6d42c1c10678928b0bf8327f378c8bc8af5a" }, + "virt-column.nvim": { "branch": "master", "commit": "b62b4ef0774d19452d4ed18e473e824c7a756f2f" }, "which-key.nvim": { "branch": "main", "commit": "0539da005b98b02cf730c1d9da82b8e8edb1c2d2" }, "yanky.nvim": { "branch": "main", "commit": "9268018e92d02650a94e39dd5f5903c542f7ea11" } } \ No newline at end of file diff --git a/lua/custom/default.lua b/lua/custom/default.lua index 2772218..3e1bb93 100644 --- a/lua/custom/default.lua +++ b/lua/custom/default.lua @@ -123,3 +123,12 @@ vim.g.pvode_minianimate = false vim.g.pcode_disable_cmpdoc = false vim.g.pcode_adaptive_color_icon = true +vim.g.pcode_columnline = true + +---@alias telescope_themes +---| "cursor" # see `telescope.themes.get_cursor()` +---| "dropdown" # see `telescope.themes.get_dropdown()` +---| "ivy" # see `telescope.themes.get_ivy()` +---| "center" # retain the default telescope theme +vim.g.pcode_telscope_theme_find_file = "center" +vim.g.pcode_telscope_theme_live_grep = "dropdown" diff --git a/lua/plugins/telescope.lua b/lua/plugins/telescope.lua index ae6f9f5..78d1116 100644 --- a/lua/plugins/telescope.lua +++ b/lua/plugins/telescope.lua @@ -1,172 +1,185 @@ return { - "nvim-telescope/telescope.nvim", - lazy = true, - cmd = "Telescope", - version = false, - opts = function() - local actions = require("telescope.actions") - vim.g.theme_switcher_loaded = true - return { - defaults = { - vimgrep_arguments = { - "rg", - "-L", - "--color=never", - "--no-heading", - "--with-filename", - "--line-number", - "--column", - "--smart-case", - }, - prompt_prefix = "  ", - selection_caret = " ", - entry_prefix = " ", - initial_mode = "insert", - selection_strategy = "reset", - sorting_strategy = "ascending", - layout_strategy = "horizontal", - layout_config = { - horizontal = { - prompt_position = "top", - preview_width = 0.55, - results_width = 0.8, - }, - vertical = { - mirror = false, - }, - width = 0.87, - height = 0.80, - preview_cutoff = 120, - }, - file_sorter = require("telescope.sorters").get_fuzzy_file, - file_ignore_patterns = { "node_modules" }, - generic_sorter = require("telescope.sorters").get_generic_fuzzy_sorter, - path_display = { "smart" }, - winblend = 0, - border = {}, - borderchars = { "─", "│", "─", "│", "╭", "╮", "╯", "╰" }, - color_devicons = true, - set_env = { ["COLORTERM"] = "truecolor" }, -- default = nil, - file_previewer = require("telescope.previewers").vim_buffer_cat.new, - grep_previewer = require("telescope.previewers").vim_buffer_vimgrep.new, - qflist_previewer = require("telescope.previewers").vim_buffer_qflist.new, - -- Developer configurations: Not meant for general override - buffer_previewer_maker = require("telescope.previewers").buffer_previewer_maker, - mappings = { - n = { ["q"] = require("telescope.actions").close }, - }, - }, + "nvim-telescope/telescope.nvim", + lazy = true, + cmd = "Telescope", + version = false, + opts = function() + local find_files = { + hidden = true, + } + local live_grep = { + only_sort_text = true, + } + if vim.g.pcode_telscope_theme_find_file and vim.g.pcode_telscope_theme_find_file ~= "center" then + find_files = { + theme = vim.g.pcode_telscope_theme_find_file, + hidden = true, + } + end + if vim.g.pcode_telscope_theme_live_grep and vim.g.pcode_telscope_theme_live_grep ~= "center" then + live_grep = { + theme = vim.g.pcode_telscope_theme_live_grep, + only_sort_text = true, + } + end + local actions = require "telescope.actions" + vim.g.theme_switcher_loaded = true + return { + defaults = { + vimgrep_arguments = { + "rg", + "-L", + "--color=never", + "--no-heading", + "--with-filename", + "--line-number", + "--column", + "--smart-case", + }, + prompt_prefix = "  ", + selection_caret = " ", + entry_prefix = " ", + initial_mode = "insert", + selection_strategy = "reset", + sorting_strategy = "ascending", + layout_strategy = "horizontal", + layout_config = { + horizontal = { + prompt_position = "top", + preview_width = 0.55, + results_width = 0.8, + }, + vertical = { + mirror = false, + }, + width = 0.87, + height = 0.80, + preview_cutoff = 120, + }, + file_sorter = require("telescope.sorters").get_fuzzy_file, + file_ignore_patterns = { "node_modules" }, + generic_sorter = require("telescope.sorters").get_generic_fuzzy_sorter, + path_display = { "smart" }, + winblend = 0, + border = {}, + borderchars = { "─", "│", "─", "│", "╭", "╮", "╯", "╰" }, + color_devicons = true, + set_env = { ["COLORTERM"] = "truecolor" }, -- default = nil, + file_previewer = require("telescope.previewers").vim_buffer_cat.new, + grep_previewer = require("telescope.previewers").vim_buffer_vimgrep.new, + qflist_previewer = require("telescope.previewers").vim_buffer_qflist.new, + -- Developer configurations: Not meant for general override + buffer_previewer_maker = require("telescope.previewers").buffer_previewer_maker, + mappings = { + n = { ["q"] = require("telescope.actions").close }, + }, + }, - extensions_list = { "themes", "terms" }, + extensions_list = { "themes", "terms" }, - pickers = { - find_files = { - hidden = true, - }, - live_grep = { - --@usage don't include the filename in the search results - only_sort_text = true, - }, - grep_string = { - only_sort_text = true, - }, - buffers = { - initial_mode = "normal", - mappings = { - i = { - [""] = actions.delete_buffer, - }, - n = { - ["dd"] = actions.delete_buffer, - }, - }, - }, - planets = { - show_pluto = true, - show_moon = true, - }, - git_files = { - hidden = true, - show_untracked = true, - }, - colorscheme = { - enable_preview = true, - }, - }, + pickers = { + find_files = find_files, + live_grep = live_grep, + grep_string = { + only_sort_text = true, + }, + buffers = { + initial_mode = "normal", + mappings = { + i = { + [""] = actions.delete_buffer, + }, + n = { + ["dd"] = actions.delete_buffer, + }, + }, + }, + planets = { + show_pluto = true, + show_moon = true, + }, + git_files = { + hidden = true, + show_untracked = true, + }, + colorscheme = { + enable_preview = true, + }, + }, - mappings = { - i = { - [""] = actions.cycle_history_next, - [""] = actions.cycle_history_prev, + mappings = { + i = { + [""] = actions.cycle_history_next, + [""] = actions.cycle_history_prev, - [""] = actions.move_selection_next, - [""] = actions.move_selection_previous, + [""] = actions.move_selection_next, + [""] = actions.move_selection_previous, - [""] = actions.close, + [""] = actions.close, - [""] = actions.move_selection_next, - [""] = actions.move_selection_previous, + [""] = actions.move_selection_next, + [""] = actions.move_selection_previous, - [""] = actions.select_default, - [""] = actions.select_horizontal, - [""] = actions.select_vertical, - [""] = actions.select_tab, + [""] = actions.select_default, + [""] = actions.select_horizontal, + [""] = actions.select_vertical, + [""] = actions.select_tab, - [""] = actions.preview_scrolling_up, - [""] = actions.preview_scrolling_down, + [""] = actions.preview_scrolling_up, + [""] = actions.preview_scrolling_down, - [""] = actions.results_scrolling_up, - [""] = actions.results_scrolling_down, + [""] = actions.results_scrolling_up, + [""] = actions.results_scrolling_down, - [""] = actions.toggle_selection + actions.move_selection_worse, - [""] = actions.toggle_selection + actions.move_selection_better, - [""] = actions.send_to_qflist + actions.open_qflist, - [""] = actions.send_selected_to_qflist + actions.open_qflist, - [""] = actions.complete_tag, - [""] = actions.which_key, -- keys from pressing - }, + [""] = actions.toggle_selection + actions.move_selection_worse, + [""] = actions.toggle_selection + actions.move_selection_better, + [""] = actions.send_to_qflist + actions.open_qflist, + [""] = actions.send_selected_to_qflist + actions.open_qflist, + [""] = actions.complete_tag, + [""] = actions.which_key, -- keys from pressing + }, - n = { - [""] = actions.close, - [""] = actions.select_default, - [""] = actions.select_horizontal, - [""] = actions.select_vertical, - [""] = actions.select_tab, + n = { + [""] = actions.close, + [""] = actions.select_default, + [""] = actions.select_horizontal, + [""] = actions.select_vertical, + [""] = actions.select_tab, - [""] = actions.toggle_selection + actions.move_selection_worse, - [""] = actions.toggle_selection + actions.move_selection_better, - [""] = actions.send_to_qflist + actions.open_qflist, - [""] = actions.send_selected_to_qflist + actions.open_qflist, + [""] = actions.toggle_selection + actions.move_selection_worse, + [""] = actions.toggle_selection + actions.move_selection_better, + [""] = actions.send_to_qflist + actions.open_qflist, + [""] = actions.send_selected_to_qflist + actions.open_qflist, - ["j"] = actions.move_selection_next, - ["k"] = actions.move_selection_previous, - ["H"] = actions.move_to_top, - ["M"] = actions.move_to_middle, - ["L"] = actions.move_to_bottom, + ["j"] = actions.move_selection_next, + ["k"] = actions.move_selection_previous, + ["H"] = actions.move_to_top, + ["M"] = actions.move_to_middle, + ["L"] = actions.move_to_bottom, - [""] = actions.move_selection_next, - [""] = actions.move_selection_previous, - ["gg"] = actions.move_to_top, - ["G"] = actions.move_to_bottom, + [""] = actions.move_selection_next, + [""] = actions.move_selection_previous, + ["gg"] = actions.move_to_top, + ["G"] = actions.move_to_bottom, - [""] = actions.preview_scrolling_up, - [""] = actions.preview_scrolling_down, + [""] = actions.preview_scrolling_up, + [""] = actions.preview_scrolling_down, - [""] = actions.results_scrolling_up, - [""] = actions.results_scrolling_down, + [""] = actions.results_scrolling_up, + [""] = actions.results_scrolling_down, - ["?"] = actions.which_key, - }, - }, - } - end, - config = function(_, opts) - require("telescope").setup(opts) - -- load extensions - pcall(function() - for _, ext in ipairs(opts.extensions_list) do - require("telescope").load_extension(ext) - end - end) - end, + ["?"] = actions.which_key, + }, + }, + } + end, + config = function(_, opts) + require("telescope").setup(opts) + -- load extensions + pcall(function() + for _, ext in ipairs(opts.extensions_list) do + require("telescope").load_extension(ext) + end + end) + end, } diff --git a/lua/plugins/vertcolumn.lua b/lua/plugins/vertcolumn.lua new file mode 100644 index 0000000..e461fe7 --- /dev/null +++ b/lua/plugins/vertcolumn.lua @@ -0,0 +1,21 @@ +local M = {} +if vim.g.pcode_columnline then + M = { + { + "lukas-reineke/virt-column.nvim", + event = "BufRead", + opts = {}, + config = function() + local icons = vim.g.pcode_icons + require("virt-column").overwrite { + exclude = { + filetypes = { "help", "text", "markdown" }, + }, + char = icons.ui.LineMiddle, + } + end, + }, + } +end + +return M diff --git a/lua/user/utils/whichkey.lua b/lua/user/utils/whichkey.lua index 80bfaf0..9ec37b4 100644 --- a/lua/user/utils/whichkey.lua +++ b/lua/user/utils/whichkey.lua @@ -126,7 +126,8 @@ M.mappings = { "Telescope find_files ", " Find files", }, - ["F"] = { "Telescope live_grep theme=ivy", " Find Text" }, + -- ["F"] = { "Telescope live_grep theme=ivy", " Find Text" }, + ["F"] = { "Telescope live_grep", " Find Text" }, ["/"] = { function() require("Comment.api").toggle.linewise.current()