1diff --git a/init.lua b/init.lua
2index 1467fdfa0e37eb65508e3297db9088955cbc1279..6e1258800979ba1d94ceddd4e69e4de083d70916 100644
3--- a/init.lua
4+++ b/init.lua
5@@ -25,6 +25,8 @@ "folke/trouble.nvim", -- diagnostics
6 "mfussenegger/nvim-dap", -- add dap support
7 "nvim-neotest/nvim-nio", -- async support library
8 "rcarriga/nvim-dap-ui", -- dap ui
9+ "nvim-telescope/telescope.nvim", -- telescope
10+ "nvim-telescope/telescope-file-browser.nvim", -- telescope file browser
11 "theHamsta/nvim-dap-virtual-text", -- dap in line text
12 "nvim-lua/plenary.nvim", -- base lib
13 "f-person/git-blame.nvim", -- more git info
14diff --git a/lua/gabrielgio/init.lua b/lua/gabrielgio/init.lua
15index 5864ae7c5aa469bb44e3a6dd71d708e70345ecdc..765b66833df5d5938e2865d14ae8d9b4a0d5df37 100644
16--- a/lua/gabrielgio/init.lua
17+++ b/lua/gabrielgio/init.lua
18@@ -23,3 +23,4 @@ later(require_func("gabrielgio.dap"))
19 later(require_func("gabrielgio.term"))
20 later(require_func("gabrielgio.neovide"))
21 later(require_func("gabrielgio.ai"))
22+later(require_func("gabrielgio.telescope"))
23diff --git a/lua/gabrielgio/lazy.lua b/lua/gabrielgio/lazy.lua
24index 77762b1177618d893b44315af4a8778372e902b9..13c8bd4fdab53544d0c78be6090643e203cfc0a2 100644
25--- a/lua/gabrielgio/lazy.lua
26+++ b/lua/gabrielgio/lazy.lua
27@@ -2,6 +2,7 @@ -- this file is an amalgamation of configurations that don't have its own
28 -- config file and will be lazily loaded
29 require("gitblame").setup()
30 require("treesitter-context").setup()
31+require("typst-preview").setup({})
32
33 vim.diagnostic.config({
34 signs = {
35diff --git a/lua/gabrielgio/lsp.lua b/lua/gabrielgio/lsp.lua
36index f6596844b3eaf09aaf5bfbae0ed5b4a9b661c37e..b8114a0d57e903b5c25fa79b6d274af439b834b7 100644
37--- a/lua/gabrielgio/lsp.lua
38+++ b/lua/gabrielgio/lsp.lua
39@@ -28,16 +28,16 @@ return nil
40 end
41
42 load_all({
43- "rust_analyzer",
44 "clangd",
45 "cssls",
46- "html",
47 "emmet_ls",
48+ "html",
49 "pylsp",
50- "zls",
51- "ts_ls",
52+ "rust_analyzer",
53 "terraformls",
54+ "ts_ls",
55 "tsp_server",
56+ "zls",
57 })
58
59 vim.lsp.enable("gopls")
60diff --git a/lua/gabrielgio/mini.lua b/lua/gabrielgio/mini.lua
61index b52152a96f516e12a95684a214261d0a84802715..c657f13033607fc4201a89556def3290425b74b8 100644
62--- a/lua/gabrielgio/mini.lua
63+++ b/lua/gabrielgio/mini.lua
64@@ -9,8 +9,6 @@ local hipatterns = require("mini.hipatterns")
65 local icons = require("mini.icons")
66 local indentscope = require("mini.indentscope")
67 local notify = require("mini.notify")
68-local pairs = require("mini.pairs")
69-local pick = require("mini.pick")
70 local snippets = require("mini.snippets")
71 local status = require("mini.statusline")
72 local tabline = require("mini.tabline")
73@@ -23,8 +21,6 @@ files.setup()
74 icons.setup()
75 indentscope.setup({ draw = { animation = indentscope.gen_animation.none() } })
76 notify.setup()
77-pairs.setup()
78-pick.setup()
79 snippets.setup()
80 status.setup()
81 tabline.setup()
82@@ -43,22 +39,3 @@
83 cmp.setup({ lsp_completition = {
84 snippet_isert = vim.snippet.expand,
85 } })
86-
87-key.nnoremap("<leader>ff", ":Pick files<CR>")
88-key.nnoremap("<leader>fs", ":Pick grep_live<CR>")
89-key.nnoremap("<leader>n", ":Telescope file_browser<CR>")
90-
91-local minifiles_toggle = function()
92- if not MiniFiles.close() then
93- MiniFiles.open(nil, false)
94- end
95-end
96-
97-local minifiles_toggle_dir = function()
98- if not MiniFiles.close() then
99- MiniFiles.open(vim.api.nvim_buf_get_name(0), false)
100- end
101-end
102-
103-key.nnoremap("<leader>n", minifiles_toggle)
104-key.nnoremap("<leader>m", minifiles_toggle_dir)
105diff --git a/lua/gabrielgio/telescope.lua b/lua/gabrielgio/telescope.lua
106new file mode 100644
107index 0000000000000000000000000000000000000000..66afaa7dbf2fa5600cdb007cd1432e137ec9e3a2
108--- /dev/null
109+++ b/lua/gabrielgio/telescope.lua
110@@ -0,0 +1,31 @@
111+local key = require("gabrielgio.key")
112+local builtins = require("telescope.builtin")
113+local telescope = require("telescope")
114+
115+telescope.setup({
116+ defaults = {
117+ file_ignore_patterns = {
118+ "vendor/",
119+ "\\.git/",
120+ },
121+ vimgrep_arguments = {
122+ "rg",
123+ "--color=never",
124+ "--no-heading",
125+ "--with-filename",
126+ "--line-number",
127+ "--column",
128+ "--smart-case",
129+ "--hidden",
130+ },
131+ },
132+})
133+
134+telescope.load_extension("file_browser")
135+
136+key.nnoremap("<leader>ff", builtins.find_files)
137+key.nnoremap("<leader>fs", builtins.live_grep)
138+key.nnoremap("<leader>fc", ":Telescope lsp_dynamic_workspace_symbols<CR>")
139+key.nnoremap("<leader>fd", ":Telescope buffers<CR>")
140+key.nnoremap("<leader>n", ":Telescope file_browser<CR>")
141+key.nnoremap("<leader>m", ":Telescope file_browser path=%:p:h select_buffer=true<CR>")