
Aviso legal : Esta publicación es una traducción realizada por un miembro de la Comunidad Fuel. Se realizan cuidadosos controles para garantizar la exactitud de las traducciones, pero éstas pueden contener errores u omisiones. Fuel Labs no se hace responsable de la exactitud, fiabilidad o actualidad de la información traducida. Enlace a la publicación original: sway.vim
Si eres un swayor y usas vim como editor de código principal aquí te enseñare como configurar la sintaxis de sway en vim, para que así puedas desarrollar smart contracts como todo un ninja.
Antes de todo tenemos que verificar que tengamos el forc-lsp instalado, ejecutando el comando forc-lsp —version, en caso de no tenerlo instalado debes instalar el toolchain de sway.
Luego de verificar que tienes el forc-lsp instalado debes clonar el repositorio de sway.vim:
git clone https://github.com/FuelLabs/sway.vim.git
copia las carpetas “ftdetect“ y “syntax“ en tu carpeta .config/ con el siguiente comando
cp -R ~/sway.vim/syntax ~/.config/nvim && cp -R ~/sway.vim/ftdetect ~/.config/nvim
en caso de no tener el archivo ~/.config/nvim/init.lua, instala kickstart.nvim.
luego agrega lo siguiente a tu archivo ~/.config/nvim/init.lua.
-- Install Sway LSP as a custom server
local lspconfig = require 'lspconfig'
local configs = require 'lspconfig.configs'
-- Check if the config is already defined (useful when reloading this file)
if not configs.sway_lsp then
configs.sway_lsp = {
default_config = {
cmd = {'forc-lsp'},
filetypes = {'sway'},
on_attach = on_attach,
init_options = {
-- Any initialization options
logging = { level = 'trace' }
},
root_dir = function(fname)
return lspconfig.util.find_git_ancestor(fname)
end;
settings = {};
};
}
end
lspconfig.sway_lsp.setup{}
Verifica que el LSP esta instalado correctamente ejecutando :LspInfo
Para configurar sway en vim son pasos muy similares a los que ejecutamos para configurarlo en neovim.
clona el repositorio de sway.vim
git clone https://github.com/FuelLabs/sway.vim.git
Ahora copia las carpetas “ftdetect“ y “syntax“ en tu carpeta
.config/con el siguiente comando:
cp -R ~/sway.vim/syntax ~/.config/nvim && cp -R ~/sway.vim/ftdetect ~/.config/nvim
Agrega el siguiente código a tu
~/.vim/filetype.vim
if exists("did_load_filetypes")
finish
endif
augroup filetypedetect
au! BufNewFile,BufRead *.[sS][wW] setf sway
augroup END
Instala vim.plug con el siguiente comando
curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
Agrega el siguiente código a tu
~/.vimrc
call plug#begin()
Plug 'prabirshrestha/vim-lsp'
call plug#end()
Ahora debes de crear un archivo llamado
~/.vim/lsp.vimy agregarle el siguiente código
" vim-lsp for Sway (sway-lsp)
if executable('sway-lsp')
au User lsp_setup call lsp#register_server({
\ 'name': 'sway-lsp',
\ 'cmd': {server_info->['sway-lsp']},
\ 'whitelist': ['sway'],
\ })
endif
Abre vim y ejecuta
:source ~/.vim/lsp.vimY por ultimo comprueba si LSP esta ejecutando con
:LspStatus
Happy hacking🌴 nos vemos en la proxima
Si quieres ver el articulo original en ingles dirígete aquí.
