julienvincent / nvim-paredit

A Paredit implementation for Neovim, built using Treesitter and written in Lua.
MIT License
162 stars 8 forks source link

Fennel language support #16

Closed chuwy closed 1 year ago

chuwy commented 1 year ago

I'm wondering if someone out there already implemented the config for Fennel. It's a bit too much for me now (don't know much about Tree Sitter), but Fennel is quite popular in NeoVim community. Tried to copy configs for Clojure, but functionality is too limited.

julienvincent commented 1 year ago

Unlikely this has been implemented by someone externally - this plugin is pretty new :)

I think the TS grammars are pretty similar to Clojure though, so it would probably be a good candidate for the next supported language.

I'd like to work on adding some additional motions first, but will probably take a stab at this soon after.

julienvincent commented 1 year ago

I took some time to add experimental language support for fennel. It's not fully released yet but if anyone is interested in trying a preview of it you can add it as follows:

{
  "julienvincent/nvim-paredit-fennel",
  dependencies = { "julienvincent/nvim-paredit" },
  ft = { "fennel" },
  config = function()
    local paredit_fennel = require("nvim-paredit-fennel")
    paredit_fennel.setup()
  end
}

This requires the work in #28 and so you will also need to update your nvim-paredit to use the branch jv/extension-api:

{
  "julienvincent/nvim-paredit",
  branch = "jv/extension-api",
  ...
}

You can find the language extension code here:

https://github.com/julienvincent/nvim-paredit-fennel

julienvincent commented 1 year ago

I'm gonna close this one out, if there are issues with this implementation they can be tracked on the nvim-paredit-fennel repo 👍🏻