@@ -698,6 +698,59 @@ require('lazy').setup({
698698 },
699699 },
700700 },
701+
702+ -- TypeScript
703+ ts_ls = {
704+ settings = {
705+ typescript = {
706+ inlayHints = {
707+ includeInlayParameterNameHints = ' all' ,
708+ includeInlayParameterNameHintsWhenArgumentMatchesName = false ,
709+ includeInlayFunctionParameterTypeHints = true ,
710+ includeInlayVariableTypeHints = true ,
711+ includeInlayPropertyDeclarationTypeHints = true ,
712+ includeInlayFunctionLikeReturnTypeHints = true ,
713+ includeInlayEnumMemberValueHints = true ,
714+ },
715+ },
716+ javascript = {
717+ inlayHints = {
718+ includeInlayParameterNameHints = ' all' ,
719+ includeInlayParameterNameHintsWhenArgumentMatchesName = false ,
720+ includeInlayFunctionParameterTypeHints = true ,
721+ includeInlayVariableTypeHints = true ,
722+ includeInlayPropertyDeclarationTypeHints = true ,
723+ includeInlayFunctionLikeReturnTypeHints = true ,
724+ includeInlayEnumMemberValueHints = true ,
725+ },
726+ },
727+ },
728+ },
729+
730+ -- Python
731+ pyright = {
732+ settings = {
733+ python = {
734+ analysis = {
735+ autoSearchPaths = true ,
736+ diagnosticMode = ' workspace' ,
737+ useLibraryCodeForTypes = true ,
738+ typeCheckingMode = ' basic' ,
739+ },
740+ },
741+ },
742+ },
743+
744+ -- Terraform
745+ terraformls = {
746+ settings = {
747+ terraform = {
748+ experimentalFeatures = {
749+ validateOnSave = true ,
750+ },
751+ },
752+ },
753+ },
701754 }
702755
703756 -- Ensure the servers and tools above are installed
@@ -716,6 +769,9 @@ require('lazy').setup({
716769 local ensure_installed = vim .tbl_keys (servers or {})
717770 vim .list_extend (ensure_installed , {
718771 ' stylua' , -- Used to format Lua code
772+ ' prettier' , -- Formatter for TypeScript/JavaScript
773+ ' black' , -- Formatter for Python
774+ ' isort' , -- Python import sorting
719775 })
720776 require (' mason-tool-installer' ).setup { ensure_installed = ensure_installed }
721777
@@ -876,27 +932,28 @@ require('lazy').setup({
876932 },
877933 },
878934
879- { -- You can easily change to a different colorscheme.
880- -- Change the name of the colorscheme plugin below, and then
881- -- change the command in the config to whatever the name of that colorscheme is.
882- --
883- -- If you want to see what colorschemes are already installed, you can use `:Telescope colorscheme`.
884- ' folke/tokyonight.nvim' ,
885- priority = 1000 , -- Make sure to load this before all the other start plugins.
886- config = function ()
887- --- @diagnostic disable-next-line : missing-fields
888- require (' tokyonight' ).setup {
889- styles = {
890- comments = { italic = false }, -- Disable italics in comments
891- },
892- }
893-
894- -- Load the colorscheme here.
895- -- Like many other themes, this one has different styles, and you could load
896- -- any other, such as 'tokyonight-storm', 'tokyonight-moon', or 'tokyonight-day'.
897- vim .cmd .colorscheme ' tokyonight-night'
898- end ,
899- },
935+ -- { -- You can easily change to a different colorscheme.
936+ -- -- Change the name of the colorscheme plugin below, and then
937+ -- -- change the command in the config to whatever the name of that colorscheme is.
938+ -- --
939+ -- -- If you want to see what colorschemes are already installed, you can use `:Telescope colorscheme`.
940+ -- 'folke/tokyonight.nvim',
941+ -- priority = 1000, -- Make sure to load this before all the other start plugins.
942+ -- config = function()
943+ -- ---@diagnostic disable-next-line: missing-fields
944+ -- require('tokyonight').setup {
945+ -- styles = {
946+ -- comments = { italic = false }, -- Disable italics in comments
947+ -- },
948+ -- }
949+ --
950+ -- -- Load the colorscheme here.
951+ -- -- Like many other themes, this one has different styles, and you could load
952+ -- -- any other, such as 'tokyonight-storm', 'tokyonight-moon', or 'tokyonight-day'.
953+ -- vim.cmd.colorscheme 'tokyonight-night'
954+ -- end,
955+ -- },
956+ -- NOTE: TokyoNight is disabled in favor of Gruvbox (configured in lua/custom/plugins/gruvbox.lua)
900957
901958 -- Highlight todo, notes, etc in comments
902959 { ' folke/todo-comments.nvim' , event = ' VimEnter' , dependencies = { ' nvim-lua/plenary.nvim' }, opts = { signs = false } },
@@ -922,17 +979,18 @@ require('lazy').setup({
922979 -- Simple and easy statusline.
923980 -- You could remove this setup call if you don't like it,
924981 -- and try some other statusline plugin
925- local statusline = require ' mini.statusline'
926- -- set use_icons to true if you have a Nerd Font
927- statusline .setup { use_icons = vim .g .have_nerd_font }
928-
929- -- You can configure sections in the statusline by overriding their
930- -- default behavior. For example, here we set the section for
931- -- cursor location to LINE:COLUMN
932- --- @diagnostic disable-next-line : duplicate-set-field
933- statusline .section_location = function ()
934- return ' %2l:%-2v'
935- end
982+ -- NOTE: mini.statusline is disabled in favor of lualine (configured in lua/custom/plugins/lualine.lua)
983+ -- local statusline = require 'mini.statusline'
984+ -- -- set use_icons to true if you have a Nerd Font
985+ -- statusline.setup { use_icons = vim.g.have_nerd_font }
986+ --
987+ -- -- You can configure sections in the statusline by overriding their
988+ -- -- default behavior. For example, here we set the section for
989+ -- -- cursor location to LINE:COLUMN
990+ -- ---@diagnostic disable-next-line: duplicate-set-field
991+ -- statusline.section_location = function()
992+ -- return '%2l:%-2v'
993+ -- end
936994
937995 -- ... and there is more!
938996 -- Check out: https://github.com/echasnovski/mini.nvim
@@ -984,7 +1042,7 @@ require('lazy').setup({
9841042 -- This is the easiest way to modularize your config.
9851043 --
9861044 -- Uncomment the following line and add your plugins to `lua/custom/plugins/*.lua` to get going.
987- -- { import = 'custom.plugins' },
1045+ { import = ' custom.plugins' },
9881046 --
9891047 -- For additional information with loading, sourcing and examples see `:help lazy.nvim-🔌-plugin-spec`
9901048 -- Or use telescope!
@@ -1012,5 +1070,8 @@ require('lazy').setup({
10121070 },
10131071})
10141072
1073+ -- Load custom keymaps
1074+ require (' custom.keymaps' )
1075+
10151076-- The line beneath this is called `modeline`. See `:help modeline`
10161077-- vim: ts=2 sts=2 sw=2 et
0 commit comments