À partir de SQLcl version 21.2, nous pouvons désormais configurer SQLcl pour la coloration syntaxique.
Cela signifie que le code que vous écrivez dans SQLcl peut être codé par couleur, en fonction des règles de coloration syntaxique que vous appliquez.
La valeur par défaut (Surbrillance de la syntaxe désactivée)
Voici une requête que j'ai écrite dans mon terminal sans coloration syntaxique :
Ainsi, aucun codage couleur n'a eu lieu. Cela utilise les couleurs que j'ai configurées dans les préférences de mon terminal, qui étaient essentiellement du texte blanc sur fond noir.
Activer la coloration syntaxique
Vous pouvez activer la coloration syntaxique avec la ligne suivante :
set highlighting on
Cela fournit un niveau de base de coloration syntaxique.
Voici à quoi ressemble la même requête :
Fondamentalement, les mots-clés SQL sont surlignés en cyan, mais rien d'autre ne l'est.
Ajouter plus de code couleur
Heureusement, nous pouvons ajouter un peu plus de code couleur.
Par exemple :
set highlighting identifier foreground magenta
Cela colore tous les identifiants avec une couleur de premier plan magenta :
Enregistrer les paramètres dans un login.sql
Fichier
Vous pouvez enregistrer vos paramètres de coloration syntaxique dans un login.sql
dossier.
En faisant cela, vous vous éviterez d'avoir à configurer ces paramètres à chaque fois que vous vous connectez en utilisant SQLcl. En effet, vous pouvez le configurer de manière à ce que le login.sql
le fichier s'exécute chaque fois que vous vous connectez à l'aide de SQLcl.
Voici un exemple de login.sql
fichier contenant les commandes de coloration syntaxique :
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
Ici, ma première ligne n'est pas liée au formatage de la syntaxe - elle configure simplement le sqlformat
vers ansiconsole
.
Les lignes restantes activent la coloration syntaxique et spécifient les couleurs à utiliser.
Une fois que vous avez ajouté la coloration syntaxique à votre login.sql
fichier, quittez SQLcl et reconnectez-vous. Lorsqu'il se reconnectera, il exécutera le login.sql
fichier, et toutes ces commandes prendront effet.
Après avoir ajouté les commandes ci-dessus à mon login.sql
file, voici à quoi ressemble ma requête maintenant (après avoir quitté SQLcl et reconnecté):
J'aurais peut-être dû laisser les mots clés en cyan ?
Autres options de coloration syntaxique
Il existe également d'autres options, telles que la possibilité de définir une couleur d'arrière-plan, de définir un drapeau en gras, etc.
La meilleure façon de les découvrir est d'exécuter la commande suivante :
help set highlighting
Voici ce que cela me donne au moment d'écrire ces lignes :
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
La liste des couleurs est assez petite (du moins au moment de la rédaction), mais elle est encore suffisante pour fournir une coloration syntaxique décente.
Étant donné que la coloration syntaxique est une nouvelle fonctionnalité, il est probable que les options d'aide ci-dessus changeront et seront développées à l'avenir.