diff --git a/lua/astrocommunity/pack/julia/init.lua b/lua/astrocommunity/pack/julia/init.lua index 3b9de45c3..bdc5a823f 100644 --- a/lua/astrocommunity/pack/julia/init.lua +++ b/lua/astrocommunity/pack/julia/init.lua @@ -44,77 +44,6 @@ return { opts = function(_, opts) local astrocore = require "astrocore" opts = astrocore.extend_tbl(opts, { - commands = { - JuliaActivateEnv = { - cond = function(client) return client.name == "julials" end, - function(args) - local bufnr = vim.api.nvim_get_current_buf() - local julials_clients = (vim.lsp.get_clients or vim.lsp.get_active_clients) { - bufnr = bufnr, - name = "julials", - } - if #julials_clients == 0 then - vim.notify( - "method julia/activateenvironment is not supported by any servers active on the current buffer", - vim.log.levels.WARN - ) - return - end - local julia_project_files = { "Project.toml", "JuliaProject.toml" } - local function _activate_env(environment) - if environment then - for _, julials_client in ipairs(julials_clients) do - julials_client.notify("julia/activateenvironment", { envPath = environment }) - end - vim.notify("Julia environment activated: \n`" .. environment .. "`", vim.log.levels.INFO) - end - end - if args.args ~= "" then - local path = vim.fs.normalize(require("plenary.path"):new(args.args):expand()) - local found_env = false - for _, project_file in ipairs(julia_project_files) do - local file = (vim.uv or vim.loop).fs_stat(vim.fs.joinpath(path, project_file)) - if file and file.type then - found_env = true - break - end - end - if not found_env then - vim.notify("Path is not a julia environment: \n`" .. path .. "`", vim.log.levels.WARN) - return - end - _activate_env(path) - else - local depot_paths = vim.env.JULIA_DEPOT_PATH - and vim.split(vim.env.JULIA_DEPOT_PATH, vim.fn.has "win32" == 1 and ";" or ":") - or { vim.fn.expand "~/.julia" } - local environments = {} - vim.list_extend( - environments, - vim.fs.find(julia_project_files, { type = "file", upward = true, limit = math.huge }) - ) - for _, depot_path in ipairs(depot_paths) do - local depot_env = vim.fs.joinpath(vim.fs.normalize(depot_path), "environments") - vim.list_extend( - environments, - vim.fs.find( - function(name, env_path) - return vim.tbl_contains(julia_project_files, name) - and string.sub(env_path, #depot_env + 1):match "^/[^/]*$" - end, - { path = depot_env, type = "file", limit = math.huge } - ) - ) - end - environments = vim.tbl_map(vim.fs.dirname, environments) - vim.ui.select(environments, { prompt = "Select a Julia environment" }, _activate_env) - end - end, - desc = "Activate a julia environment", - nargs = "?", - complete = "file", - }, - }, config = { julials = { settings = {