Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment configurer la coloration syntaxique dans SQLcl

À 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.