Artigo
· Jul. 16 2min de leitura

Configuração de VSCode Auto Save e ObjectScript CompileOnSave

Olá!

Recentemente estive investigando uma situação incômoda enquanto editava classes ou rotinas ObjectScript no VSCode. O que acontecia era que, como estava escrevendo as linhas de código na minha classe (por exemplo: a adição de um novo método, mudança da assinatura de classe ou de um bloco de código) isso ocasionava uma rápida revisão da sintaxe, reformatação e compilação - e inevitavelmente (já que eu estava apenas na metade da escrita), isso gerava erros de compilação.

Sabendo que estava a meio caminho de adicionar código, podia simplesmente descartar essa mensagem, mas isso começou a ficar incômodo e me condicionou a ignorar possíveis erros (o que não é bom).

Ainda pior, o processo de compilação também reformatava o documento e às vezes rompia o que antes eram linhas de código bem formatadas (que apareciam abaixo da linha que eu estava escrevendo, o que me obrigava a ir até essa zona do documento e arrumá-las novamente.

O que é isso que acontece?

Há duas configurações em jogo:

  1. A configuração de salvar automaticamente do VSCode (files.autosave), que dita se deve salvar automaticamente um documento que tenha sido modificado e, se sim, quanto tempo esperar antes de salvar (files.autoSaveDelay)
  2. CompileOnSave da extensão ObjectScript (objectscript.compileOnSave), que determina se depois de salvar o documento, ele também se importa e compila no namespace conectado do IRIS.

Como eu tinha o autosave ativado, e com um retardo de espera pequeno, junto com o compileOnSave, significava que o código parcialmente editada se seguia compilando, gerando os erros aos quais me referi, e como mencionado, às vezes reformatando blocos de códigos bons pré-existentes.

No meu caso, decidi pelo seguinte:

  1. Autosalvar (files.autosave) desativado (se ignora autosaveDelay), e...
  2. CompileOnSave (objectscript.compileOnSave) ativado.

Agora, quando estou satisfeito com minhas edições (e quando eu queira!), aperto Ctrl+S para salvar, importar e compilar minha classe, e estou atento a essa mensagem emergente que agora tem verdadeiro significado e propósito.

Você pode escolher uma combinação diferente (por exemplo, seguir em frente e salvar automaticamente depois de 5 minutos mais ou menos, aceitando que o código pode não compilar completamente). No entanto, decidi que a combinação anterior funciona para mim, e espero que - se você está passando pelo mesmo incômodo, esse artigo possa ajudá-lo a encontrar sua configuração ótima.

Agradeço a @Patrick Sulin, e @Raj Singh por me indicar como chegar a estes ajustes!

Discussão (0)1
Entre ou crie uma conta para continuar