O plugin oficial do VSCODE para rescript

Você deve ter rescript> = 9.1 instalado localmente em seu projeto, através da instalação usual de NPM ou fios. As versões mais antigas não têm garantia de funcionar.
Nosso destaque funciona bem com os temas mais populares do VSCode, como:
Os únicos 2 temas que não (e não podemos) apoiar, devido à falta de coloração, são:
Observe que se o seu tema personalizado não parece destacar muito (por exemplo, nenhuma cor para a tag JSX de casos superiores, nenhuma distinção entre módulo e variante), tente um dos temas recomendados para ver se esse é o problema. Para mais informações, consulte este post.
.res , .resi , rescript.json e o arquivo de configuração Legacy bsconfig.json .external como @bs.module e @bs.valtry , for , etc.//#region e //#endregion . Inicie o código vs Código Quick Open ( Ctrl+P ), cole o comando a seguir e pressione Enter.
ext install chenglou92.rescript-vscode
O plug -in ativa os arquivos .res e .resi . Se você já tem o servidor de linguagem da razão, é possível que este último tenha precedência sobre este. Verifique se você está usando este plug-in ("Sintaxe Rescript") em vez de servidor de linguagem de razão ("Sintaxe Bucklescript").
Existe um canal de pré-lançamento disponível. Destina -se a testar recursos novos e possivelmente instáveis. Você pode ativá-lo clicando no botão "Switch to PREV-RELEASE" na página de extensão rescript-vscode no vscode. A partir deste ponto, as versões de pré-lançamento sempre terão uma versão ímpar menor (1.5.x, 1.7.x, 2.1.x, etc.) enquanto as liberações estáveis têm números pequenos da versão (1.4.x, 1.6.x, 2.0.0, etc.).
Mesmo que o canal de pré-lançamento pareça experimental para você, ainda sugerimos que você tente e envie qualquer problema que você tenha. A longo prazo, isso nos dará uma melhor experiência no editor em geral.
| Comando | Descrição |
|---|---|
| Rescript: Crie um arquivo de interface para este arquivo de implementação | Cria um arquivo de interface ( .resi ) para o arquivo .res atual, preenchendo automaticamente todos os tipos e valores no arquivo atual. |
| Rescript: Abra o arquivo JS compilado para este arquivo de implementação | Abre o arquivo JS compilado para o arquivo de rescript atual. |
| Rescript: Switch Implementation/Interface | Alterna entre o arquivo de implementação e interface. Se você estiver em um arquivo .res , o comando abrirá o arquivo .resi correspondente (se existir) e se você estiver em um arquivo .resi o comando abrirá o arquivo .res correspondente. Isso também pode ser acionado com o Alt+O . |
| Rescript: Start Code Analyzer | Isso iniciará a análise de código no projeto Rescript do arquivo do qual você executa o comando. |
Você encontrará todas as configurações específicas do Rescript sob o SCOPE rescript.settings .
| Contexto | Descrição |
|---|---|
| Pronto para começar a construir | Se já não houver uma construção de rescript em execução no projeto aberto, a extensão solicitará e perguntará se você deseja iniciar uma compilação automaticamente. Você pode desativar este prompt automático por meio da configuração rescript.settings.askToStartBuild . |
| Caminho binário de Rescript | A extensão procurará a existência de um arquivo node_modules/.bin/rescript e usará seu diretório como o binaryPath . Se não o encontrar na raiz do projeto (que é onde reside o rescript.json mais próximo), ele sobe pastas no sistema de arquivos recursivamente até que o encontre (geralmente o caso em monorepos) ou atinge o nível superior. Para substituir esse processo de pesquisa, o caminho pode ser configurado explicitamente usando a configuração rescript.settings.binaryPath |
| Caminho da plataforma Rescript | A extensão procurará a existência de um diretório node_modules/rescript e usará o subdiretório correspondente à plataforma atual como o platformPath . Se não o encontrar na raiz do projeto (que é onde reside o rescript.json mais próximo), ele sobe pastas no sistema de arquivos recursivamente até que o encontre (geralmente o caso em monorepos) ou atinge o nível superior. Para substituir esse processo de pesquisa, o caminho pode ser configurado explicitamente usando a configuração rescript.settings.platformPath |
| Dicas de embutimento (experimental) | Isso permite que um editor coloque anotações alinhadas com o texto para exibir dicas de tipo. Ativar usando rescript.settings.inlayHints.enable: true |
| Lente de código (experimental) | Isso diz ao editor para adicionar lentes de código às definições de função, mostrando seu tipo completo acima da definição. Ativar usando rescript.settings.codeLens: true |
| Ajuda da assinatura | Isso diz ao editor para mostrar ajuda ao Signature quando você está escrevendo chamadas de função. Ativar usando rescript.settings.signatureHelp.enabled: true |
Configurações padrão:
// Whether you want the extension to prompt for autostarting a ReScript build if a project is opened with no build running
"rescript.settings.askToStartBuild" : true ,
// Path to the directory where cross-platform ReScript binaries are. You can use it if you haven't or don't want to use the installed ReScript from node_modules in your project.
"rescript.settings.binaryPath" : null
// Path to the directory where platform-specific ReScript binaries are. You can use it if you haven't or don't want to use the installed ReScript from node_modules in your project.
"rescript.settings.platformPath" : null
// Enable (experimental) inlay hints.
"rescript.settings.inlayHints.enable" : true
// Maximum length of character for inlay hints. Set to null to have an unlimited length. Inlay hints that exceed the maximum length will not be shown
"rescript.settings.inlayHints.maxLength" : 25
// Enable (experimental) code lens for function definitions.
"rescript.settings.codeLens" : true O Analisador de Código é um modo na extensão que executa uma análise de código adicional em seu projeto. A análise ajuda a encontrar o código morto em um nível granular, encontrar exceções não tratadas e muito mais.
O analisador de código usa o reanalyze, que é incorporado na extensão, para que você não precise instalar nada extra para executá -lo.
Você precisará configurar qual análise de código você deseja executar e quais (se houver) os diretórios você deseja ignorar. A configuração é feita através da adição reanalyze em rescript.json . Você receberá um preenchimento automático para quais opções de configuração são válidas. Você também pode ler tudo sobre como configurar reanalyze aqui.
Abra a paleta de comando e execute ReScript: Start Code Analyzer . Isso iniciará a análise de código no projeto Rescript do arquivo do qual você executa o comando.
O código morto é destacado no editor e as ações de código para suprimir os avisos de código morto estão disponíveis na maioria dos casos.
Quando terminar, pare o modo de análise de código clicando no botão Stop Code Analyzer na barra de status do editor. Isso clareará todos os avisos de análise relatados.
Atualmente, não funciona para a análise completa do código Monorepo Dead (embora deva funcionar para cada pacote Monorepo individualmente).
Você pode configurar o VSCODE para recolher os arquivos JavaScript, o Rescript gera sob seu arquivo Rescript de origem. Isso "ocultará" os arquivos gerados no explorador de arquivos do VSCODE, mas ainda os deixam acessíveis ao expandir o arquivo de rescript de origem que eles pertencem.
Abra as configurações do VSCode e digite:
"explorer.fileNesting.enabled" : true ,
"explorer.fileNesting.patterns" : {
"*.res" : "${capture}.mjs, ${capture}.js, ${capture}.cmi, ${capture}.cmt, ${capture}.cmj" ,
"*.resi" : "${capture}.res"
} ,Isso aninha as implementações em interfaces, se elas estão presentes e ninhos todos os arquivos gerados sob o arquivo Rescript principal. Adapte e ajuste ao seu gosto.
Uma captura de tela do resultado:

Veja Changelog
Leia nosso guia contribuinte
Consulte o arquivo de licença para obter detalhes.