diff --git a/home/base/desktop/editors/neovim/astronvim_user/init.lua b/home/base/desktop/editors/neovim/astronvim_user/init.lua index 86a53ed4..4df325c3 100644 --- a/home/base/desktop/editors/neovim/astronvim_user/init.lua +++ b/home/base/desktop/editors/neovim/astronvim_user/init.lua @@ -99,6 +99,10 @@ return { "gitcommit", "latex", "sql", + -- Lisp like + "fennel", + "clojure", + "commonlisp", -- customized languages: "scheme", }) @@ -124,6 +128,38 @@ return { build = "cargo build --release", ft = { "scm", "scheme" }, }, + { "Olical/nfnl", ft = "fennel" }, + { + "Olical/conjure", + ft = { "clojure", "fennel", "python", "scheme" }, -- etc + -- [Optional] cmp-conjure for cmp + dependencies = { + { + "PaterJason/cmp-conjure", + config = function() + local cmp = require("cmp") + local config = cmp.get_config() + table.insert(config.sources, { + name = "buffer", + option = { + sources = { + { name = "conjure" }, + }, + }, + }) + cmp.setup(config) + end, + }, + }, + config = function(_, opts) + require("conjure.main").main() + require("conjure.mapping")["on-filetype"]() + end, + init = function() + -- Set configuration options here + vim.g["conjure#debug"] = true + end, + }, -- Lua implementation of CamelCaseMotion, with extra consideration of punctuation. { import = "astrocommunity.motion.nvim-spider" }, @@ -372,6 +408,7 @@ return { formatting.nginx_beautifier, -- Nginx formatter formatting.verible_verilog_format, -- Verilog formatter formatting.emacs_scheme_mode, -- using emacs in batch mode to format scheme files. + formatting.fnlfmt, -- Format Fennel code }) end end, diff --git a/home/base/desktop/editors/packages.nix b/home/base/desktop/editors/packages.nix index 98266ffb..c51c4b99 100644 --- a/home/base/desktop/editors/packages.nix +++ b/home/base/desktop/editors/packages.nix @@ -84,9 +84,10 @@ jsonnet-language-server hadolint # Dockerfile linter - # -- Scheme + # -- Lisp like Languages guile racket-minimal + fnlfmt # fennel #-- Others taplo # TOML language server / formatter / validator