diff --git a/bin/install.ps1 b/bin/install.ps1 index 989928e..99e8f8e 100644 --- a/bin/install.ps1 +++ b/bin/install.ps1 @@ -55,7 +55,6 @@ New-Item -ItemType SymbolicLink -Path ~\AppData\Local\nvim\init.lua -Target (Res New-Item -ItemType SymbolicLink -Path ~\AppData\Local\nvim\lua\lualine_setup.lua -Target (Resolve-Path .\dotfiles\neovim\lua\lualine_setup.lua) -Force New-Item -ItemType SymbolicLink -Path ~\AppData\Local\nvim\lua\term_powershell.lua -Target (Resolve-Path .\dotfiles\neovim\lua\term_powershell.lua) -Force New-Item -ItemType SymbolicLink -Path ~\AppData\Local\nvim\lua\lspconfig\server_configurations\satysfi_ls.lua -Target (Resolve-Path .\dotfiles\neovim\lua\lspconfig\server_configurations\satysfi_ls.lua) -Force -New-Item -ItemType SymbolicLink -Path ~\AppData\Local\nvim\lua\lspconfig\server_configurations\jetls.lua -Target (Resolve-Path .\dotfiles\neovim\lua\lspconfig\server_configurations\jetls.lua) -Force mkdir $env:LOCALAPPDATA\nvim\after\ftplugin New-Item -ItemType SymbolicLink -Path $env:LOCALAPPDATA\nvim\after\ftplugin\satysfi.lua -Target (Resolve-Path .\dotfiles\neovim\after\ftplugin\satysfi.lua) New-Item -ItemType SymbolicLink -Path $env:LOCALAPPDATA\nvim\after\ftplugin\tex.lua -Target (Resolve-Path .\dotfiles\neovim\after\ftplugin\tex.lua) diff --git a/bin/install.sh b/bin/install.sh index 166cc7e..357d8a0 100755 --- a/bin/install.sh +++ b/bin/install.sh @@ -27,7 +27,6 @@ ln -sf $(pwd)/dotfiles/neovim/lua/lualine_setup.lua ~/.config/nvim/lua/lualine_s ln -sf $(pwd)/dotfiles/neovim/lua/term_powershell.lua ~/.config/nvim/lua/term_powershell.lua mkdir -p ~/.config/nvim/lua/lspconfig/server_configurations ln -sf $(pwd)/dotfiles/neovim/lua/lspconfig/server_configurations/satysfi_ls.lua ~/.config/nvim/lua/lspconfig/server_configurations/satysfi_ls.lua -ln -sf $(pwd)/dotfiles/neovim/lua/lspconfig/server_configurations/jetls.lua ~/.config/nvim/lua/lspconfig/server_configurations/jetls.lua mkdir -p ~/.config/nvim/after/ftplugin ln -sf $(pwd)/dotfiles/neovim/after/ftplugin/satysfi.lua ~/.config/nvim/after/ftplugin/satysfi.lua ln -sf $(pwd)/dotfiles/neovim/after/ftplugin/tex.lua ~/.config/nvim/after/ftplugin/tex.lua diff --git a/dotfiles/neovim/init.lua b/dotfiles/neovim/init.lua index d4d0535..f53a480 100644 --- a/dotfiles/neovim/init.lua +++ b/dotfiles/neovim/init.lua @@ -29,6 +29,9 @@ require('lazy').setup({ }, -- Color scheme { dir = "./lua/term_powershell.lua", + cond = function() + return vim.fn.has('win32') == 1 + end, event = "CmdlineEnter", config = function() require("term_powershell").setup { @@ -70,29 +73,6 @@ require('lazy').setup({ 'lervag/vimtex', ft = { 'tex', 'latex' }, }, - { - -- 'kdheepak/JET.nvim', - -- 'qwjyh/JET.nvim', - dir = '~/work/julia/JET.nvim', - -- dev = false, -- set true to use dir - lazy = true, - dependencies = { - 'jose-elias-alvarez/null-ls.nvim', - }, - config = function() - require("jet").setup { - timeout = 15000, - -- disable setup since null-ls doesn't support lspconfig - -- https://github.com/jose-elias-alvarez/null-ls.nvim/commit/656e5cb554fed1eb2f398f325511601fab988ce0 - setup_lspconfig = false, - debug = true, - } - end, - -- build process(make environments and add JET.jl) - build = - [[mkdir -p ~/.julia/environments/nvim-null-ls && julia --startup-file=no --project=~/.julia/environments/nvim-null-ls -e 'using Pkg; Pkg.add("JET")']], - -- ft = { 'julia', }, - }, { 'hkupty/iron.nvim', ft = { 'julia', 'python', 'ruby', 'lua', }, @@ -116,6 +96,9 @@ require('lazy').setup({ { "mtoohey31/cmp-fish", ft = 'fish', + cond = function() + return vim.fn.has('win32') == 0 + end }, }, }, @@ -151,6 +134,12 @@ require('lazy').setup({ 'nvim-lua/plenary.nvim' }, }, + { + 'nvimtools/none-ls.nvim', + dependencies = { + 'nvim-lua/plenary.nvim', + }, + }, { 'folke/trouble.nvim', -- config = function @@ -218,9 +207,6 @@ require('lazy').setup({ }, -- event = 'VeryLazy', -- doesn't work with existing comp and treesitter config = function() - -- Load treesitter grammer for orgmode - require('orgmode').setup_ts_grammar() - -- Setup treesitter require('nvim-treesitter.configs').setup({ highlight = { @@ -643,8 +629,6 @@ lspconfig.powershell_es.setup { bundle_path = '~/scoop/apps/powershell-editorservice/current', capabilities = capabilities, } --- -- jetls --- lspconfig.jetls.setup {} -- ccls -- -- csharp -- lspconfig.omnisharp.setup { @@ -657,7 +641,19 @@ lspconfig.typst_lsp.setup { single_file_support = true, } -local lss = { "pyright", "rust_analyzer", "texlab", "ccls", "clangd", "tsserver", --[["tailwindcss"]] "hls", "cmake", +lspconfig.rust_analyzer.setup { + on_attach = on_attach, + capabilities = capabilities, + settings = { + ['rust-analyzer'] = { + check = { + command = "clippy", + } + } + } +} + +local lss = { "pyright", "texlab", "ccls", "clangd", "tsserver", --[["tailwindcss"]] "hls", "cmake", "csharp_ls", "html", "r_language_server", "ruff_lsp", "cssls" } for _, ls in pairs(lss) do lspconfig[ls].setup { @@ -666,6 +662,14 @@ for _, ls in pairs(lss) do } end +-- none-ls +local null_ls = require('null-ls') +null_ls.setup { + sources = { + null_ls.builtins.diagnostics.fish, + } +} + -- nvim-cmp setup local cmp = require 'cmp' local luasnip = require 'luasnip' @@ -686,8 +690,8 @@ cmp.setup { [''] = cmp.mapping.scroll_docs(4), -- Down [''] = cmp.mapping.complete(), [''] = cmp.mapping.confirm { - behavior = cmp.ConfirmBehavior.Replace, - select = true, + behavior = cmp.ConfirmBehavior.Insert, + select = false, }, [''] = cmp.mapping(function(fallback) if cmp.visible() then diff --git a/dotfiles/neovim/lua/lspconfig/server_configurations/jetls.lua b/dotfiles/neovim/lua/lspconfig/server_configurations/jetls.lua deleted file mode 100644 index 6f6f599..0000000 --- a/dotfiles/neovim/lua/lspconfig/server_configurations/jetls.lua +++ /dev/null @@ -1,68 +0,0 @@ --- local cmd = { --- 'julia', --- '--startup-file=no', --- '--history-file=no', --- '-e', --- [[ --- # Load JETLS.jl: attempt to load from ~/.julia/environments/nvim-lspconfig --- # with the regular load path as a fallback --- jet_install_path = joinpath( --- get(DEPOT_PATH, 1, joinpath(homedir(), ".julia")), --- "environments", "nvim-lspconfig" --- ) --- pushfirst!(LOAD_PATH, jet_install_path) --- using JETLS --- popfirst!(LOAD_PATH) --- depot_path = get(ENV, "JULIA_DEPOT_PATH", "") --- project_path = let --- dirname(something( --- ## 1. Finds an explicitly set project (JULIA_PROJECT) --- Base.load_path_expand(( --- p = get(ENV, "JULIA_PROJECT", nothing); --- p === nothing ? nothing : isempty(p) ? nothing : p --- )), --- ## 2. Look for a Project.toml file in the current working directory, --- ## or parent directories, with $HOME as an upper boundary --- Base.current_project(), --- ## 3. First entry in the load path --- get(Base.load_path(), 1, nothing), --- ## 4. Fallback to default global environment, --- ## this is more or less unreachable --- Base.load_path_expand("@v#.#"), --- )) --- end --- @info "Running JETLS language server" VERSION pwd() project_path --- @info "not running yet" --- JETLS.runserver(stdin, stdout) --- ]], --- } -local cmd = { - 'julia', - '--startup-file=no', - '--history-file=no', - '-e', - [[ - println("===STARTING JETLS===") - using JETLS - JETLS.runserver(stdin, stdout) - @info "Running JETLS" VERSION pwd() project_path - @info "============================" - ]], -} - -return { - default_config = { - cmd = cmd, - filetypes = { 'julia' }, - root_dir = function(fname) - local util = require 'lspconfig.util' - return util.root_pattern 'Project.toml' (fname) or util.find_git_ancestor(fname) or - util.path.dirname(fname) - end, - }, - docs = { - description = [[ -TBW - ]], - }, -}