Quick start
Enable plugin for your editor
- Go to VSCode extensions
- Search for “IWE” and click install or to go the extension page
After this, the extension should be enabled for Markdown files. It will load the contents of the directory and build a documents graph.
How to use
- Code Actions menu (
⌘
+.
) to see available options for the current element - Go to Definition (
F12
) on a link to open the linked file - Format Document command (
Shift
+Option
+F
) to restructure/format the document - Rename command (
F2
) on a link will rename the file and update all the references - Global notes search (
⌘
+T
) using the headers text
Please provide your feedback in VSCode integration GitHub discussion.
Option 1: IWE Neovim Plugin (Recommended)
For the best experience, use the official iwe.nvim plugin:
{
'iwe-org/iwe.nvim',
dependencies = {
'nvim-telescope/telescope.nvim', -- Required
},
config = function()
require('iwe').setup({
lsp = {
cmd = { "iwes" },
name = "iwes",
debounce_text_changes = 500,
auto_format_on_save = true
},
mappings = {
enable_markdown_mappings = true,
enable_telescope_keybindings = false,
enable_lsp_keybindings = false,
leader = "<leader>",
localleader = "<localleader>"
},
telescope = {
enabled = true,
setup_config = true,
load_extensions = { "ui-select", "emoji" }
}
})
end
}
After installation:
- Run
:checkhealth iwe
to verify setup - Navigate to your notes directory and run
:IWE init
to initialize an IWE project - Open any
.md
file and enjoy enhanced IWE integration
Option 2: Manual LSP Setup
Download IWE binaries from GitHub or follow the installation instructions here to use a package manager.
To enable IWE LSP for markdown files manually, ensure that the
iwes
binary is in your path and add this to your config:
vim.api.nvim_create_autocmd('FileType', {
pattern = 'markdown',
callback = function(args)
vim.lsp.start({
name = 'iwes',
cmd = {'iwes'},
root_dir = vim.fs.root(args.buf, {'.iwe' }),
flags = {
debounce_text_changes = 500
}
})
end,
})
Recommended plugins:
- render-markdown.nvim - Enhanced markdown rendering
- nvim-telescope/telescope.nvim - Fuzzy finder integration
- Go to Zed - Extensions in the main menu
- Search for “IWE” and click install
After this, the extension should be enabled for Markdown files. It will load the contents of the current directory.
How to use
- Code Actions menu (
⌘
+.
) to see available options for the current element - Go to Definition (
F12
) on a link to open the linked file - Format Document command (
Shift
+Option
+F
) to restructure/format the document - Rename command (
F2
) on a link will rename the file and update all the references - Global notes search (
⌘
+T
) using the headers text
Please prorivide your feedback in Zed intregration discussion on GitHub.
- Download IWE binaries from GitHub or follow the installation instructions here to use a package manager.
- Add IWE to your
languages.toml
(usually in~/.config/helix
, create the file if needed):
[language-server.iwe]
command = "iwes"
[[language]]
name = "markdown"
language-servers = [ "iwe" ] # you might want more LSPs in here
auto-format = true # optional, enable format-on-save
(Optional, but highly recommended) Add this to your config to enable inlay hints:
[editor.lsp]
display-inlay-hints = true
Then run:
hx --health markdown
To see configured language servers.
Please prorivide your feedback in Helix intregration discussion on GitHub.
Enjoy!
And help us to make it better with your feedback!
More details are available on the project wiki.