@@ -91,7 +91,7 @@ vim.g.mapleader = ' '
9191vim .g .maplocalleader = ' '
9292
9393-- Set to true if you have a Nerd Font installed and selected in the terminal
94- vim .g .have_nerd_font = false
94+ vim .g .have_nerd_font = true
9595
9696-- [[ Setting options ]]
9797-- See `:help vim.opt`
@@ -102,7 +102,7 @@ vim.g.have_nerd_font = false
102102vim .opt .number = true
103103-- You can also add relative line numbers, to help with jumping.
104104-- Experiment for yourself to see if you like it!
105- -- vim.opt.relativenumber = true
105+ vim .opt .relativenumber = true
106106
107107-- Enable mouse mode, can be useful for resizing splits for example!
108108vim .opt .mouse = ' a'
@@ -275,7 +275,39 @@ require('lazy').setup({
275275 },
276276 },
277277 },
278+ {
279+ ' rcarriga/nvim-dap-ui' ,
280+ requires = { ' mfussenegger/nvim-dap' },
281+ config = function ()
282+ local dap , dapui = require ' dap' , require ' dapui'
283+
284+ -- set up with all the default layouts:
285+ dapui .setup ()
286+
287+ -- auto-open when session starts, auto-close when it ends:
288+ dap .listeners .after .event_initialized [' dapui_config' ] = function ()
289+ dapui .open ()
290+ end
291+ dap .listeners .before .event_terminated [' dapui_config' ] = function ()
292+ dapui .close ()
293+ end
294+ dap .listeners .before .event_exited [' dapui_config' ] = function ()
295+ dapui .close ()
296+ end
278297
298+ -- optional: a handy toggle keymap
299+ vim .keymap .set (' n' , ' <leader>du' , dapui .toggle , { desc = ' Toggle DAP UI' })
300+ end ,
301+ },
302+ {
303+ ' mfussenegger/nvim-dap-python' ,
304+ dependencies = { ' mfussenegger/nvim-dap' },
305+ config = function ()
306+ -- point to the Python that can `import debugpy`
307+ local debugpy_path = vim .fn .stdpath ' data' .. ' /mason/packages/debugpy/venv/bin/python'
308+ require (' dap-python' ).setup (debugpy_path )
309+ end ,
310+ },
279311 -- NOTE: Plugins can also be configured to run Lua code when they are loaded.
280312 --
281313 -- This is often very useful to both group configuration, as well as handle
@@ -665,7 +697,22 @@ require('lazy').setup({
665697 local servers = {
666698 -- clangd = {},
667699 -- gopls = {},
668- -- pyright = {},
700+ pyright = {
701+ settings = {
702+ python = {
703+ analysis = {
704+ typeCheckingMode = ' off' , -- ✅ disable type errors
705+ diagnosticMode = ' openFilesOnly' , -- ✅ optional: only open buffers, not full project
706+ autoSearchPaths = true ,
707+ useLibraryCodeForTypes = true ,
708+ },
709+ },
710+ },
711+ },
712+ lemminx = {},
713+
714+ -- ✅ JavaScript/TypeScript LSP (recommended)
715+ ts_ls = {},
669716 -- rust_analyzer = {},
670717 -- ... etc. See `:help lspconfig-all` for a list of all the pre-configured LSPs
671718 --
@@ -708,6 +755,8 @@ require('lazy').setup({
708755 local ensure_installed = vim .tbl_keys (servers or {})
709756 vim .list_extend (ensure_installed , {
710757 ' stylua' , -- Used to format Lua code
758+ ' prettierd' , -- JS/TS formatter
759+ ' xmlformatter' , -- for formatting XML if needed
711760 })
712761 require (' mason-tool-installer' ).setup { ensure_installed = ensure_installed }
713762
@@ -965,18 +1014,20 @@ require('lazy').setup({
9651014 -- Here are some example plugins that I've included in the Kickstart repository.
9661015 -- Uncomment any of the lines below to enable them (you will need to restart nvim).
9671016 --
968- -- require 'kickstart.plugins.debug',
969- -- require 'kickstart.plugins.indent_line',
970- -- require 'kickstart.plugins.lint',
971- -- require 'kickstart.plugins.autopairs',
972- -- require 'kickstart.plugins.neo-tree',
973- -- require 'kickstart.plugins.gitsigns', -- adds gitsigns recommend keymaps
1017+ require ' kickstart.plugins.debug' ,
1018+ require ' kickstart.plugins.indent_line' ,
1019+ require ' kickstart.plugins.lint' ,
1020+ require ' kickstart.plugins.autopairs' ,
1021+ require ' kickstart.plugins.neo-tree' ,
1022+ require ' kickstart.plugins.gitsigns' , -- adds gitsigns recommend keymaps
9741023
9751024 -- NOTE: The import below can automatically add your own plugins, configuration, etc from `lua/custom/plugins/*.lua`
9761025 -- This is the easiest way to modularize your config.
9771026 --
9781027 -- Uncomment the following line and add your plugins to `lua/custom/plugins/*.lua` to get going.
979- -- { import = 'custom.plugins' },
1028+ { import = ' custom.plugins' },
1029+ { import = ' custom.keymaps' },
1030+ { import = ' custom.setups' },
9801031 --
9811032 -- For additional information with loading, sourcing and examples see `:help lazy.nvim-🔌-plugin-spec`
9821033 -- Or use telescope!
0 commit comments