Requisitos
- DSS (Developer Support Subsystem)em execução (inicio automático, em paralelo com o_Language Server)
- Resultados podem ser parciais devido ao processo de indexação em andamento
Recomenda-se que pastas e arquivos não contenham caracteres especiais e/ou acentuados e sempre em mínusculas de forma a manter a compatibildade entre os diversos sistemas operacionais suportados pelo TDS-VSCode e seus componentes. Leia [Convenção para nomenclatura de File System em ambiente Linux]https://tdn.totvs.com/x/h8BICw).
Saiba todas as opções disponíveis em Code Navigation e aqui, breve documentação das opções suportadas em projetos baseados nas linguagens TOTVS.
As opções de acionamento citadas são as configurações padrão do VS-Code, podendo ser diferentes em função de reconfiguração efetuada pelo usuário ou outras extensões. Algumas operações de navegação também pode ser acionadas via menu de contexto do editor.
| Funcionalidades futuras | |
|---|---|
Destaque visual para código isolado por #ifdef. |
|
| Strings de tradução (visualização e edição). | |
| Suporte a AdvPL/Asp (congelado) |
Acionamento: Ctrl+P ou F1 (iniciar com vazio) e inicie a digitação para o filtro por nome do arquivo.
Acionamento: Você pode ativar ou desativar a trilha via View > Appearence > Show Breadcrumbs ou com a configuração breadcrumbs.enabled.
Acionamento: Ctrl+Click (abre) ou Ctrl+Alt+Click (abre ao lado) ou F12 sobre uma chamada de função ou variável.
Acionamento: Ctrl+Shift+O ou F1 (iniciar com @) e inicie a digitação para o filtro por nome do simbolo.
No prompt do filtro, informe
@:para agrupar os elementos.
Acionamento: Ctrl+T ou F1 (iniciar com #) e inicie a digitação para o filtro por nome do símbolo.
Acionamento: Alt+F12 sobre uma chamada de função ou variável.
Acionamento: Passe o ponteiro do mouse sobre o item a ser visualizado.
Você pode ativar ou desativar a passagem de mouse em
View > Text Editor > Hover: Enabledou mudar o formato de apresentação emFile > Preference > Settings > Extension > TOTVS > Totvs Language Server > Editor: Hover.
Os formatos disponíveis são:
| Opção | Comportamento |
| off | Desativa a apesentação. |
| plain text | Apresenta a documentação em um formato simples. |
| markdown | Apresenta a documentação formatada. |
Para as duas últimas,
View > Text Editor > Hover: Enableddeve estar habilitado.
Acionamento: Ctrl+<passagem ponteiro do mouse> sobre o item a ser visualizado. Se este ficar destacado com um sublinhado, pode ir para definição acionando Ctrl+<acionamento do mouse>.
Acionamento: Automático ao acionar ( após um identificador de função/método ou ctrl+shitf+space, na lista de argumentos.
Funciona apenas para funções/métodos, cujo fonte esteja no seu projeto ou para funções/métodos AdvPL binários (definidas no núcleo da linguagem).
Em métodos o valor apresentado pode não ser preciso.
Acionamento: Ativação efetuada pela configuração editor.codeLens, sendo que o padrão é ativado.
Para configurar somente para fontes TOTVS, use a configuração
totvsLanguageServer.editor.codeLens.
Usuários
Git,SVN,CVSe similares: O conteúdo da pasta.vscode/.advplé inicializado a cada sessão do VS-Code, portanto, recomenda-se ignorar essa pasta nos processos de versionamento.
Por padrão, a extensão utiliza um cache em memória, que é gerado na inicialização da extensão. Em alguns casos, pode ser interessante manter esse cache entre sessões, ou seja, ter um cache persistente.
Para ajustar o comportamento acesse File > Preference > Settings, filtre por totvsLanguageServer.editor e localize Totvs Language Server › Editor › Index: Cache, configurando o comportamento:
| Opção | Comportamento |
|---|---|
off |
O cache desligado. |
onMemory |
O cache ligado e em memória. |
onDisk |
O cache é armazenado em disco, para uso nas próximas sessões. |
A opção off, atuará somente nos fontes abertos para edição e o DSS terá limitações em suas funcionalidades. A onMemory, o cache é mantido em memória, sendo recriado a cada nova sessão de uso do VS-Code, com o DSS totalmente funcional, incluindo arquivos não abertos para edição. A opção onDisk, persiste o cache em disco, em diversos blocos (arquivos), procurando distribuir o custo de leitura/gravação (I/O) em disco e minimizando eventuais corrupções do cache.
Devido ao escopo de atuação da opção
offem relação as demais opções, os resultados das ações de navegações e de informação, podem variar para o mesmo fonte e elemento.
.tdsindexignore é um arquivo dentro da pasta do projeto (ou sub-pastas) que ignora/impede que os arquivos sejam indexados, lembrando que essa configuração afetará a navegação em fontes.
O uso do .tdsindexignore é similar aos usados em outras extensões/aplicativos, p.e. .gitignore, .vscodeignore e outros.
-
O
.tdsindexignorepode ser colocado em qualquer pasta ou sub-pastas, sendo que será aplicado de forma recursiva na pasta e sub-pastas, onde esta armazenado; -
Cada linha do arquivo, é formado por uma string que representa o padrão de nome de pastas e arquivos que serão ignorados ou não. Para formar o padrão, use:
| Curinga | Uso |
|---|---|
? |
Um caracter desconhecido. |
* |
Um ou mais caracteres desconhecidos. |
. |
Pasta corrente. |
! |
Nega a expressão, forçando o processamento do arquivo. |
@ |
Expressão regular Perl. |
A aplicação dos padrões de seleção não são sensíveis a caixa (maiúsculas e minúsculas). Informe primeiro as regras mais restritivas. Ao colocar o arquivo
.tdsindexignoreem uma pasta, este será aplicado na pasta onde foi criado e em suas sub-pastas. Linhas em branco não tem efeito Evite usar nomes acentuados.
root
\- api
| |- .tdsindexignore
| |- api_product.prw
| |- api_customer.prw
| |- api_order.prw
| |- api_my_test.prw
| |- dbacess1.prw
| |- dbacess2.prw
\- app
| |- app.prw
| |- utils.prw
| |- dbacess1.prw
| |- dbacess2.prw
| |- app_my_test.prw
\- test
| | .tdsindexignore
| \- unit
| | |- test_product.prw
| | |- test_customer.prw
| | |- test_order.prw
| \- integration
| |- customer.prw
| |- product.prw
| |- order.prw
|- .tdsindexignore
# A pasta ``test`` e suas sub-pastas serão ignoradas.
test
# Arquivos ``dbacess``, seguido de um caractere e em qualquer pasta será ignorado
dbacess?.prw
# A pasta ``api`` e sub-pastas serão ignoradas.
# Exceto o arquivo ``api_my_test.prw``
!api_my_test.prw
# Cria uma exceção a regra em ``root/.tdsindexignore``
# Não ignora arquivos iniciados com ``test``
!test*.prw











