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.