/dl-vscode

Extensão do Visual Studio Code para as linguagens da Design Líquido e dialetos de Portugol.

Primary LanguageTypeScriptMIT LicenseMIT

Linguagens em Português para Visual Studio Code

Extensão no Visual Studio Marketplace Extensão na open-vsx.org

Essa extensão visa melhorar a produtividade de projetos escritos usando as linguagens da Design Líquido:

Essa extensão também oferece suporte parcial a outras linguagens que são dialetos de Delégua:

Instalação

Você pode instalar pesquisando nas extensões do Visual Studio Code ou por este link.

Funcionalidades até então

  • Sintaxe colorida
  • Formatação de arquivos em Delégua
  • Análise semântica para Delégua
  • Reconhecimento de expressões comuns das linguagens Delégua, Égua, Pituguês e dialetos de Portugol, como VisuAlg e Portugol Studio/Webstudio
  • Ícones para arquivos .delegua, .egua, .pitugues, .foles, .lincones e .lmht
  • Trechos de códigos para facilitar desenvolvimento em Delégua
  • Mecanismo de completude de funções da biblioteca global para Delégua
  • Suporte a depuração para Delégua, Pituguês, Portugol VisuAlg e Portugol Studio/Webstudio

Tradução entre linguagens

Essa extensão suporta tradução entre linguagens:

  • VisuAlg para Delégua;
  • Delégua para JavaScript
  • JavaScript para Delégua
  • Delégua para Python

Pressione Ctrl + Shift + p (Cmd + Shift + p no Mac) e digite "tradução" para ter acesso aos comandos. Você pode atribuir atalhos de teclado a eles se quiser.

Depuração

Delégua possui um protocolo próprio de comunicação entre depurador e cliente de depuração, conforme especificado aqui. A ideia é que seja possível escrever interações entre diferentes clientes de depuração, como outros editores que tenham suporte a depuração, por exemplo.

O Visual Studio Code também possui um protocolo de comunicação detalhado aqui. Para que Delégua e Visual Studio Code se entendam, é preciso um intermediador entre eles, implementado pela classe DeleguaTempoExecucaoLocal.

Segundo a documentação do Visual Studio Code, linguagens podem usar ou um executável que faça a tradução das mensagens entre linguagem e Visual Studio Code, um servidor Socket implementado dentro da extensão, ou ainda, uma implementação customizada. Aqui optamos pela opção do servidor Socket até a versão 0.1.1 (ver classes DeleguaTempoExecucaoRemota e DeleguaSessaoDepuracaoRemota), que abre em uma porta aleatória disponível. Esta forma comanda a execução de Delégua com a opção --depurador definida, que abre o servidor de depuração na porta 7777 e espera uma instrução de pronto para liberar os comandos de depuração para a interface do VSCode. A implementação ainda existe, mas não é habilitada por padrão. Poderá voltar no futuro.

Atualmente a extensão usa o núcleo da linguagem Delégua como uma dependência NPM e instancia e controla os elementos da linguagem.