Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Como configurar o realce de sintaxe no SQLcl


A partir do SQLcl versão 21.2, agora podemos configurar o SQLcl para realce de sintaxe.

Isso significa que o código que você escreve em SQLcl pode ser codificado por cores, com base nas regras de realce de sintaxe aplicadas.

O padrão (sintaxe realce desativado)


Aqui está uma consulta que escrevi no meu Terminal sem realce de sintaxe:

Portanto, nenhuma codificação de cores ocorreu. Isso usa as cores que configurei nas preferências do meu Terminal, que era basicamente apenas texto branco em um fundo preto.

Ativar destaque de sintaxe


Você pode habilitar o realce de sintaxe com a seguinte linha:
set highlighting on

Isso fornece um nível básico de realce de sintaxe.

Veja como a mesma consulta se parece agora:

Basicamente, as palavras-chave SQL são destacadas em ciano, mas nada mais é.

Adicione mais codificação de cores


Felizmente, podemos adicionar mais códigos de cores.

Por exemplo:
set highlighting identifier foreground magenta

Isso colore todos os identificadores com uma cor de primeiro plano magenta:

Salvar configurações em um login.sql Arquivo


Você pode salvar suas configurações de realce de sintaxe em um login.sql Arquivo.

Ao fazer isso, você evitará ter que definir essas configurações toda vez que se conectar usando SQLcl. Isso porque você pode configurá-lo de forma que o login.sql arquivo é executado toda vez que você se conecta usando SQLcl.

Aqui está um exemplo de um login.sql arquivo que contém comandos de realce de sintaxe:
set sqlformat ansiconsole

set highlighting on
set highlighting keyword foreground blue
set highlighting identifier foreground magenta
set highlighting string foreground green
set highlighting number foreground cyan
set highlighting comment foreground yellow

Aqui, minha primeira linha não está relacionada à formatação de sintaxe - apenas configura o sqlformat para ansiconsole .

As linhas restantes permitem realce de sintaxe e especificam quais cores usar.

Depois de adicionar realce de sintaxe ao seu login.sql arquivo, saia do SQLcl e reconecte-se. Quando ele se reconectar, ele executará o login.sql arquivo, e todos esses comandos entrarão em vigor.

Tendo adicionado os comandos acima ao meu login.sql arquivo, aqui está a aparência da minha consulta agora (depois que eu saí do SQLcl e reconectei):

Talvez eu devesse ter deixado as palavras-chave em ciano?

Outras opções de realce de sintaxe


Existem também outras opções, como a capacidade de definir uma cor de fundo, definir um sinalizador em negrito, etc.

A melhor maneira de descobrir isso é executar o seguinte comando:
help set highlighting

Aqui está o que isso retorna para mim no momento em que escrevo:
set highlighting <flag>
                | <type> RESET
                | <type> FOREGROUND <color>
                | <type> BACKGROUND <color>
                | <type> BOLD <flag>
                | <type> ULINE <flag>
                | <type> INVERSE <flag>

	<type>  = DEFAULT | COMMENT | STRING | NUMBER | PUNCTUATION
           | KEYWORD | IDENTIFIER
	<color> = RED | BLUE | BLACK | CYAN | GREEN | MAGENTA | WHITE
           | YELLOW
	<flag>  = ON | OFF | RESET

EXAMPLES
	set highlighting on

A lista de cores é bem pequena (pelo menos no momento da escrita), mas ainda é suficiente para fornecer um realce de sintaxe decente.

Dado que o realce de sintaxe é um novo recurso, é provável que as opções de ajuda acima sejam alteradas e expandidas no futuro.