From 5d186c009a85efbdad2b92115d4268c7c4a7aa18 Mon Sep 17 00:00:00 2001 From: Jose Storopoli Date: Mon, 20 Oct 2025 03:24:12 -0500 Subject: [PATCH] feat(lang): julia support (#6231) ## Description - Another take on #4436. - Adds LSP - Adds cmp and blink.cmp for LaTeX symbols ## Related Issue(s) #5455 ## Screenshots ![CleanShot 2025-07-05 at 08 05 01@2x](https://github.com/user-attachments/assets/36a6e5ac-2632-4a33-af9e-674b7f1b750d) ## Checklist - [x] I've read the [CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md) guidelines. --- lua/lazyvim/plugins/extras/lang/julia.lua | 66 +++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 lua/lazyvim/plugins/extras/lang/julia.lua diff --git a/lua/lazyvim/plugins/extras/lang/julia.lua b/lua/lazyvim/plugins/extras/lang/julia.lua new file mode 100644 index 00000000..067be457 --- /dev/null +++ b/lua/lazyvim/plugins/extras/lang/julia.lua @@ -0,0 +1,66 @@ +return { + recommended = function() + return LazyVim.extras.wants({ + ft = { "julia" }, + root = { "Project.toml" }, + }) + end, + + { + "nvim-treesitter/nvim-treesitter", + opts = { ensure_installed = { "julia" } }, + }, + + { + "neovim/nvim-lspconfig", + opts = { + servers = { + julials = { + settings = { + -- use the same default settings as the Julia VS Code extension + julia = { + completionmode = "qualify", + lint = { missingrefs = "none" }, + }, + }, + }, + }, + }, + }, + + -- cmp integration + { + "hrsh7th/nvim-cmp", + optional = true, + dependencies = { "kdheepak/cmp-latex-symbols" }, + opts = function(_, opts) + table.insert(opts.sources, { + name = "latex_symbols", + option = { + strategy = 0, -- mixed + }, + }) + end, + }, + + -- blink.cmp integration + { + "saghen/blink.cmp", + optional = true, + dependencies = { "kdheepak/cmp-latex-symbols", "saghen/blink.compat" }, + opts = { + sources = { + compat = { "latex_symbols" }, + providers = { + latex_symbols = { + kind = "LatexSymbols", + async = true, + opts = { + strategy = 0, -- mixed + }, + }, + }, + }, + }, + }, +}