Uma configuração do tipo vim para hélice
Deixe -me adivinhar por que você está aqui. Você é um usuário (neo) vim. Hoje, pela milionésima vez, você atualizou seus plugins e recebeu um mar de mensagens de erro criminalmente inúteis. Você tem coisas para fazer. Você não tem tempo para pesquisar os problemas do GitHub dos plugins de arcane mantidos por pessoas cuja abordagem para quebrar mudanças é ... bem, um pouco mais cavalheiresco para seus gostos.
Você se lembra de um amigo ou um colega enviou um link para o editor da Helix há um tempo atrás. Parecia muito legal, certo?
"Mas e os plugins!" gritou os acólitos de Neovim. Hmm ... plugins. Aqueles plugins que quebram seu vimrc quase não reconhecível com a regularidade deprimente. Ou talvez você realmente bebeu o Kool Aid e traduzisse sua configuração para Lua. Não importa de qualquer maneira. Breaking mudanças nos plugins Neovim não se importam com o seu .vimrc ou seu init.lua
Sim ... aqueles plugins que você nem precisa instalar para ter um editor funcional.
Os plugins são condenados!
Suas mãos suadas se atrapalham no seu teclado mecânico obnoxiosamente alto com as teclas alt + hjkl para concentrar seu emulador de terminal aberto com o gerenciador de janelas de ladrilhos. kitty ou alacritty , provavelmente. Você é jogado de volta brevemente a uma lembrança das inúmeras horas passadas tentando obter seu terminal e NEO (Vim) Colourschemes para corresponder.
Você instala o lançamento binário mais recente do Helix disponível no seu gerenciador de pacotes de escolha e cd no diretório em que estava prestes a começar a trabalhar antes da configuração Neo (VIM) ser afogada em uma inundação de vermelho.
hx
Você timidamente pressiona a barra de espaço e experimenta o seletor de arquivos. Pesquisa difusa. Destaque da sintaxe. Legal. Naturalmente, o diretório em que você está em um projeto de ferrugem. Você seleciona um dos inúmeros arquivos lib.rs que servem como ponto de entrada para as caixas de espaço de trabalho de carga que você divide seu monólito na esperança de melhorar seus tempos de compilação incremental no seu envelhecimento MacBook Pro. Sua empresa não fornecerá um dos novos modelos M1, porque este ainda não tem 5 anos. Infelizmente.
Você ouve rust-analyzer começa a impor sua vontade à sua Intel CPU, aleijada ainda mais pela obsessão de Jonny Ive pela magreza acima de tudo. Aposto que ele é um forda furiosa.
Espere um minuto ... Seus olhos disparam ao redor da tela. Não há erros. O destaque da sintaxe parece certo. Você tenta navegar pelo arquivo usando {} , mas ele não está funcionando. Hmm, isso pode ser descoberto mais tarde. Você usa o mouse para levar o cursor a uma invocação de uma macro_rules! macro. Você pressiona g e recebe uma série de opções movidas a LSP. Você nem instalou um plug -in LSP! Você pressiona k e um pop-up aparece com a documentação para a macro.
É assim que a vida sempre deve ser. Você resolve fazer a mudança para a helix.
... e não muito tempo depois, você desiste. Sua memória muscular vim é muito forte. A estrutura verbal-modificadora-objeto dos comandos VIM tornou-se o idioma que seu cérebro usa para enviar instruções aos seus dedos. Derrotado, as referências ao hx em sua .zsh_history se tornam menor e distante, até que desapareçam completamente, substituídas mais uma vez por vim , nvim ou nvim alias para vim .
Você descarta as mensagens de erro vermelho gritando para você toda vez que você abre o editor. Talvez você mantenha uma instância em funcionamento depois de descartar todos os erros para não precisar passar pela humilhação de descartar erros de que você não tem tempo, energia ou motivação para corrigir toda vez que deseja editar um arquivo.
Talvez um dia, você pense, será possível usar o Helix no "Vim Mode", afinal, existe um plugin VIM bastante decente para o VSCODE hoje em dia, certo?
Meu amigo. Senti sua frustração, sua raiva, sua tristeza, sua decepção e sua derrota.
Talvez eu não consiga lhe dar uma solução perfeita agora, mas posso lhe dar mais do que suficiente para fazer a bola rolar!
Confira o arquivo config.toml neste repositório. Ele contém apenas mapeamentos -chave. Esses foram os mapeamentos importantes mais importantes para me permitir usar o máximo possível da minha memória muscular do VIM ao editar o texto na hélice.
Se você está acostumado a realizar muito os comandos c , precisará se adaptar à seleção da área desejada com v e excluindo -a.
Com isso dito, muitas das coisas mais básicas (incluindo C , 0 , $ , ^ , G , {} e % !), Nas quais você confia todos os dias para editar e navegar por um arquivo de texto sem pensar sobre ele, é implementado.
Sinta -se à vontade para gastar isso, personalizá -lo, fazer sugestões, melhorias, preencher lacunas que eu não sei como preencher etc.