Jelajahi Sumber

move julia stuff to core/lang (#1023)

Abouzar Parvan 4 tahun lalu
induk
melakukan
e82fc442d0
3 mengubah file dengan 54 tambahan dan 14 penghapusan
  1. 4 14
      ftplugin/julia.lua
  2. 1 0
      lua/default-config.lua
  3. 49 0
      lua/lang/julia.lua

+ 4 - 14
ftplugin/julia.lua

@@ -1,14 +1,4 @@
-local cmd = {
-  "julia",
-  "--startup-file=no",
-  "--history-file=no",
-  -- vim.fn.expand "~/.config/nvim/lua/lsp/julia/run.jl",
-  CONFIG_PATH .. "/lua/lsp/julia/run.jl",
-}
-require("lspconfig").julials.setup {
-  cmd = cmd,
-  on_new_config = function(new_config, _)
-    new_config.cmd = cmd
-  end,
-  filetypes = { "julia" },
-}
+require("lang.julia").format()
+require("lang.julia").lint()
+require("lang.julia").lsp()
+require("lang.julia").dap()

+ 1 - 0
lua/default-config.lua

@@ -176,6 +176,7 @@ require("lang.graphql").config()
 require("lang.html").config()
 require("lang.java").config()
 require("lang.json").config()
+require("lang.julia").config()
 require("lang.kotlin").config()
 require("lang.lua").config()
 require("lang.php").config()

+ 49 - 0
lua/lang/julia.lua

@@ -0,0 +1,49 @@
+local M = {}
+
+M.config = function()
+  O.lang.julia = {}
+end
+
+M.format = function()
+  -- todo: implement formatters (if applicable)
+  return "no formatters configured!"
+end
+
+M.lint = function()
+  -- todo: implement linters (if applicable)
+  return "no linters configured!"
+end
+
+M.lsp = function()
+  if require("lv-utils").check_lsp_client_active "julials" then
+    return
+  end
+  -- Add the following lines to a new julia file, e.g. install.jl
+  -- using Pkg
+  -- Pkg.instantiate()
+  -- Run the file you created.
+  -- julia install.jl
+  -- Julia language server will now be installed on your system.
+
+  local cmd = {
+    "julia",
+    "--startup-file=no",
+    "--history-file=no",
+    -- vim.fn.expand "~/.config/nvim/lua/lsp/julia/run.jl",
+    CONFIG_PATH .. "/lua/lsp/julia/run.jl",
+  }
+  require("lspconfig").julials.setup {
+    cmd = cmd,
+    on_new_config = function(new_config, _)
+      new_config.cmd = cmd
+    end,
+    filetypes = { "julia" },
+  }
+end
+
+M.dap = function()
+  -- TODO: implement dap
+  return "No DAP configured!"
+end
+
+return M