Emmet support based on LSP. This is a fork of this project that seems unmaintained
See emmet documentation here
- nvim-lspconfig Installed
- A completion plugin that supports LSP, like:
- A Snippet plugin that supports LSP, like:
npm install -g ls_emmet
In your neovim config:
local lspconfig = require'lspconfig'
local configs = require'lspconfig.configs'
local capabilities = vim.lsp.protocol.make_client_capabilities()
capabilities.textDocument.completion.completionItem.snippetSupport = true
if not configs.ls_emmet then
configs.ls_emmet = {
default_config = {
cmd = { 'ls_emmet', '--stdio' };
filetypes = { 'html', 'css', 'scss', 'javascript', 'javascriptreact', 'typescript', 'typescriptreact', 'haml',
'xml', 'xsl', 'pug', 'slim', 'sass', 'stylus', 'less', 'sss'};
root_dir = function(fname)
return vim.loop.cwd()
end;
settings = {};
};
}
end
lspconfig.ls_emmet.setup{ capabilities = capabilities }
Just type:
table>tr*3>td*2
And it will be expanded to:
<table>
<tr>
<td>|</td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
</table>
Bug reports, feature suggestions and especially code contributions are welcome. You open a GitHub issue or pull request. Please read this document before opening an issue.
Markup | StyleSheets |
---|---|
HTML | CSS |
TSX | SCSS |
JSX | SASS |
JS | STYLUS |
XML | SSS |
XSL | LESS |
HAML | |
PUG | |
SLIM |