diff --git a/7.-Example-Custom-Plugins.md b/7.-Example-Custom-Plugins.md index 28e5e38..2f59eb1 100644 --- a/7.-Example-Custom-Plugins.md +++ b/7.-Example-Custom-Plugins.md @@ -2709,4 +2709,70 @@ return { } ``` Sumber : -https://github.com/roobert/tailwindcss-colorizer-cmp.nvim \ No newline at end of file +https://github.com/roobert/tailwindcss-colorizer-cmp.nvim + +# Telescope File Browser +sumber : +- https://github.com/nvim-telescope/telescope-file-browser.nvim +```lua +return { + "nvim-telescope/telescope-file-browser.nvim", + dependencies = { "nvim-telescope/telescope.nvim", "nvim-lua/plenary.nvim" }, + keys = { + { + "sf", + function() + local telescope = require "telescope" + + local function telescope_buffer_dir() + return vim.fn.expand "%:p:h" + end + + telescope.extensions.file_browser.file_browser { + path = "%:p:h", + cwd = telescope_buffer_dir(), + respect_gitignore = false, + hidden = true, + grouped = true, + previewer = false, + initial_mode = "insert", + layout_config = { height = 40 }, + } + end, + desc = "Open File Browser with the path of the current buffer", + }, + }, + config = function(_, opts) + local telescope = require "telescope" + local actions = require "telescope.actions" + local fb_actions = require("telescope").extensions.file_browser.actions + opts.extensions = { + file_browser = { + theme = "dropdown", + -- disables netrw and use telescope-file-browser in its place + hijack_netrw = true, + mappings = { + -- your custom insert mode mappings + ["n"] = { + -- your custom normal mode mappings + ["N"] = fb_actions.create, + ["h"] = fb_actions.goto_parent_dir, + [""] = function(prompt_bufnr) + for i = 1, 10 do + actions.move_selection_previous(prompt_bufnr) + end + end, + [""] = function(prompt_bufnr) + for i = 1, 10 do + actions.move_selection_next(prompt_bufnr) + end + end, + }, + }, + }, + } + telescope.setup(opts) + require("telescope").load_extension "file_browser" + end, +} +``` \ No newline at end of file