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-server
If you haven't already, install it to yourPATH
:
cargo install --git https://github.com/ethereum/fe.git --branch fe-v2 fe-language-server
-
Neovim 0.9.0 or later Requires Tree-sitter and
vim.filetype.add
support -
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-treesitter
is installed::TSInstallInfo
Confirm
fe
is listed under "Parsers installed." -
Check queries:
:lua print(vim.inspect(vim.api.nvim_get_runtime_file("queries/fe/*.scm", true)))
Ensure
fe
queries are loaded.
-
Ensure
fe-language-server
is 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-runtime
Restart Neovim and the plugin will reinitialize.