totvs / advpl-vscode

Suporte para Advpl no VsCode
MIT License
161 stars 63 forks source link

Formatação de #ifdef e de Queryes em Embedded Sql. #472

Closed robsonrosilva closed 3 years ago

robsonrosilva commented 3 years ago

Formatação de estruturas de compilação #ifdef e #ifndef. Melhoria de performance de Formatação. Formatação de Queries. Configuração de enconding padrão para arquivos advpl e 4gl.

243

robsonrosilva commented 3 years ago

@killerall implementei uma forma diferente de fazer a formatação estou usando aqui a algum tempo, mas lógico sempre é bom testar. Junto com esse novo comportamento para a formatação implementei a formatação de queries em embedded Sql que acredito que será muito útil, essa configuração pode ser desabilitada e configurada de acordo com algumas definições da ferramenta de formatação que implementei.

killerall commented 3 years ago

Opa, consegue colocar aqui a documentação das chaves novas que criou, para eu colocar na wiki?

robsonrosilva commented 3 years ago

Criei mais duas chaves: noQueryFormatter - essa chave é caso a pessoa queira desativar as identações de queries, por padrão a identação vem ativada caso a pessoa queira desativar é só colocar essa chave no settings com true. queryLanguage - essa chave melhora a identificação de expressões de queries para algumas linguagens ela pode receber 4 valores: sql - para Standard SQL n1ql - para Couchbase N1QL db2 - para IBM DB2 pl/sql - para Oracle PL/SQL

De qualquer forma coloquei para que na primeira formatação seja feita uma pergunta para alimentar o settings automaticamente.

Caso queira que eu mude algo ou tenha sugestões pode falar sem problemas.

robsonrosilva commented 3 years ago

@killerall acho que é interessante colocar nas definições de sintaxe que linha começada com é comentada descobri devido as queries que não importa o contexto da linha se ela começar com o compilador interpreta como comentário.

robsonrosilva commented 3 years ago

@killerall boa noite, estou utilizando na minha extensão a formatação em beginSql até então não tive problemas com o uso. As implementações que fiz por último estou usando a 1 mês e sem incidentes, se puder dar uma olhada em como ficou, para mim já está viável para o merge.

killerall commented 3 years ago

Opa, to voltando de ferias amanha. Dou uma olha sim. Vlw

AlencarGabriel commented 3 years ago

Olá @robsonrosilva ,

essas novas "chaves" a que se referem , são configurações do VsCode?

Porque se sim, falta defini-las no package.

robsonrosilva commented 3 years ago

Mesmo esqueci de colocar lá, vou ajustar.

killerall commented 3 years ago

Opa @robsonrosilva vc apagou o package.lock , e adicionou ele no gitignore. Isso é arriscado, pois vai fazer atualização de todas as libs. Consegue retirar esse ponto do PR?

robsonrosilva commented 3 years ago

Feito.