Pular para o conteúdo

Backend do Cantor para Scilab: Destaque de Sintaxe e Autocomplete

Trago neste post algumas novidades sobre o suporte ao Scilab no Cantor, meu projeto do Google Summer of Code deste ano.

Após as últimas semanas de trabalho, duas interessantes funcionalidades do backend foram implementadas: o destaque de sintaxe e o autocomplete para funções e variáveis pré-definidas. Estas funcionalidades são legais pois estão presentes na maioria das IDEs e elas, em conjunto com outras características, são o que nos fazem preferir a escrever linhas de código em IDEs do que em editores de texto convencionais. 🙂

Essas funcionalidades foram desenvolvidas baseadas na forma como estão implementadas para o backend de Maxima: usando arquivo XML que lista todas as funções e variáveis pré-definidas.

Alguns screenshots para demonstrar o funcionamento delas. Abaixo, temos o destaque de sintaxe do Scilab no SciNotes, o editor padrão do Scilab:

Destaque de sintaxe no SciNotes

Para encontrar todas as palavras-chave de funcionalidades e variáveis pré-definidas, usei a função getscilabkeywords que lista todas as palavras chaves do Scilab. Com ela em mãos, pude criar o arquivo XML com estes dados. Abaixo vemos o destaque de sintaxe no Cantor:

Destaque de sintaxe no Cantor

Ainda falta um detalhe para completar esta funcionalidade: o destaque de variáveis pré-definidas. Mas estou conversando com o Alex Rieder para terminarmos isso.

Abaixo, como curiosidade, o destaque de sintaxe do Scilab no Cantor e no SciNotes, lado-a-lado:

Destaque de sintaxe no Cantor e SciNotes

A outra funcionalidade é o autocomplete, que faz com que o Cantor sugira nomes de funções ou variáveis pré-definidas ao desenvolvedor durante a escrita do código. No Cantor, basta após qualquer caractere digitar a tecla TAB (padrão neste software para esta funcionalidade).

Na imagem abaixo temos o autocomplete sugerindo nomes de função para a palavra “plot” (a função de gerar gráficos no Scilab):

Autocomplete em ação!

Ao contrário do destaque de sintaxe, o autocomplete também está funcionando para as variáveis pré-definidas.

O código deste backend está no repositório do Cantor, atualmente no branch scilab-backend. Fique a vontade para testar, mas não se esqueça: você deve compilar também o Scilab caso queira experimentar o suporte no Cantor!

Bem, por enquanto é isso! O projeto está bem avançado e, quem sabe, teremos o suporte ao Scilab no Cantor versão KDE SC 4.8? 😉

E para quem for à Berlim: nos veremos por lá!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *