E foi lançado o Neovim 0.5 com suporte a LSP, melhorias para Lua, e muito mais. Confira as novidades e veja com instalar no Linux.
Para quem não está familiarizado com o Neovim deve saber que o framework do projeto, a base de código do Vim foi revisada por mais de sete anos, como resultado das quais mudanças foram feitas para simplificar a manutenção do código, fornecem um meio de divisão de trabalho entre vários mantenedores, separando a interface da parte base (a interface pode ser alterada sem tocar nas partes internas) e implementando uma nova arquitetura extensível baseada em plug-ins.
Entre os problemas do Vim que levaram à criação do Neovim está a base de código monolítica de mais de 300.000 linhas de código C.
Apenas algumas pessoas entendem todas as nuances da base de código do Vim, e todas as alterações são controladas por um mantenedor, Tornando difícil manter e melhorar o editor.
Em vez do código embutido no núcleo do Vim para suportar a GUI, Neovim propõe o uso de uma camada universal que permite criar interfaces usando vários kits de ferramentas.
Agora, após quase dois anos de desenvolvimento, foi anunciado o lançamento da nova versão do Neovim 0.5 (um ramo do editor Vim, que focava em melhorar a escalabilidade e flexibilidade), esta versão representa cerca de 4000 commits desde a versão 0 .4.4.
Novidades do Neovim 0.5
No Neovim 0.5, os destaques incluem suporte para LSP, novas APIs para marcas estendidas (com rastreamento de mudanças de resolução de bytes) e buffers de decoração, além de grandes melhorias para lua como plugin e configuração.
Esta nova versão apresenta um grande número de alterações das quais a maior parte destas alterações estão focadas em melhorias para Lua, novas APIs e melhorias na configuração e é que se destaca o suporte estendido a Lua como uma linguagem para o desenvolvimento de plugins. E gerenciamento de configurações.
De todas as mudanças que mais se destacam no Neovim 0.5, poderemos constatar que foi adicionado um cliente LSP (Language Server Protocol) integrado em Lua, que pode ser utilizado para conectar-se a serviços externos para análise e conclusão de código.
Das APIs dono Neovim 0.5, destaca-se a que foi adicionada para controlar o layout dos buffers selecionados, bem como uma API para usar tags estendidas para rastrear alterações no nível de byte individual.
No Neovim 0.5 também há suporte experimental para tree-sitter como um mecanismo de sintaxe, incluindo um baseado nas novas APIs principais para rastreamento e decoração de bytes.
Finalmente em relação às correções, o Neovim 0.5 traz os seguintes destaques:
- A colagem de blocos corrigida não funcionava corretamente
- Corrigido o comportamento mudo de nvim_exec()
- Correção de muitos bugs descobertos por clang e cobertura
- Resolução de problemas de terminfo no Windows
- Solução com tela de ajuste e prega
- Resolver problemas de família de terminais de display
Para saber mais sobre essa versão do Neovim, acesse a nota de lançamento.
Como instalar ou atualizar
Já no caso de instalação desta nova versão no Linux, é importante ressaltar que o Neovim está disponível por padrão na maioria dos repositórios das distribuições mais populares.
Embora o único problema no momento seja que a nova versão ainda não foi atualizada nos repositórios da maioria das distribuições Linux.
De momento, apenas o Arch Linxu e seus derivados já têm a disponibilidade deste pacote.
Para instalar no Arch e derivados, basta abrir um terminal e nele digitarão o seguinte comando:
sudo pacman -S neovim
Já para aqueles que são Debian, Ubuntu e usuários derivados, eles podem instalar o novo pacote assim que estiver disponível, executando o comando no terminal:
sudo apt install neovim
No caso de quem é usuário do Fedora e derivados:
sudo dnf install neovim
Usuários do OpenSUSE:
sudo zypper install neovim
Finalmente, para usuários do Gentoo:
emerge -a app-editors/neovim