Neovim plugin for the Fe programming language with:
- Syntax highlighting via Tree-sitter
- Indentation support
- LSP integration for go-to-definition and more
fe-language-serverIf you haven't already, install it to yourPATH:
cargo install --git https://github.com/ethereum/fe.git fe-language-server-
Neovim 0.9.0 or later Requires Tree-sitter and
vim.filetype.addsupport -
GCC or Clang For compiling the Tree-sitter parser
- Copy this directory to:
cp -r ./ ~/.local/share/nvim/site/pack/plugins/start/nvim-fe- Install
nvim-treesitter:
git clone https://github.com/nvim-treesitter/nvim-treesitter ~/.local/share/nvim/site/pack/plugins/start/nvim-treesitter- Add to
init.lua:
require("nvim_fe").setup()Add to your packer config:
use({
"https://github.com/fe-lang/nvim-fe",
config = function()
require("nvim_fe").setup()
end,
requires = {
"nvim-treesitter/nvim-treesitter",
},
}){
"https://github.com/fe-lang/nvim-fe",
dependencies = { "nvim-treesitter/nvim-treesitter" },
config = function()
require("nvim_fe").setup()
end,
}-
Ensure
nvim-treesitteris installed::TSInstallInfo
Confirm
feis listed under "Parsers installed." -
Check queries:
:lua print(vim.inspect(vim.api.nvim_get_runtime_file("queries/fe/*.scm", true)))Ensure
fequeries are loaded.
-
Ensure
fe-language-serveris installed and available in yourPATH. -
Check the LSP client:
:LspInfo
Confirm the Fe LSP client is listed and attached.
Delete the runtime directories to force reinstallation:
rm -rf ~/.local/share/nvim/tree-sitter-fe
rm -rf ~/.local/share/nvim/nvim-fe-runtimeRestart Neovim and the plugin will reinitialize.