Как синтаксически выделить команду / автозаполнение / автоформат sql внутри javascript / node.js файла в коде vscode / visual studio? - PullRequest
2 голосов
/ 08 января 2020

Color highlighting in .js file

Color highlighting in .sql file

В настоящий момент команда sql обрабатывается как строка и должна быть вручную отформатирована с помощью capslock, если она находится внутри javascript функция. Например:

const sqlite3 = require('sqlite3').verbose();

let db = new sqlite3.Database('../db/test.db');

let sql = `create table person (
    id BIGSERIAL NOT NULL PRIMARY KEY,
    first_name VARCHAR(50) NOT NULL,
    last_name VARCHAR(50) NOT NULL,
    gender VARCHAR(6) NOT NULL,
    date_of_birth DATE NOT NULL,
    email VARCHAR(150));
insert into person (first_name, last_name, gender, date_of_birth) values ('Anne', 'Smith', 'Female', '1988-01-09');
insert into person (first_name, last_name, email, gender, date_of_birth) values ('Jake', 'Jones', 'jake@gmail.com', 'Male', '1990-12-31');`;

Команда long sql будет отображаться как блок зеленого текста в моем vscode (следуя моей цветовой схеме для строки)

Желаемая цветовая схема такая, как если бы Я поместил его в файл sql, например:

create table person (
    id BIGSERIAL NOT NULL PRIMARY KEY,
    first_name VARCHAR(50) NOT NULL,
    last_name VARCHAR(50) NOT NULL,
    gender VARCHAR(6) NOT NULL,
    date_of_birth DATE NOT NULL,
    email VARCHAR(150));
enter image description hereinsert into person (first_name, last_name, gender, date_of_birth) values ('Anne', 'Smith', 'Female', '1988-01-09');
insert into person (first_name, last_name, email, gender, date_of_birth) values ('Jake', 'Jones', 'jake@gmail.com', 'Male', '1990-12-31');

имеет цвета:

  • оранжевый для слов, таких как создание таблицы, вставка в первичный ключ, а не в ноль, varchar, et c
  • белый для человека, идентификатор, имя, фамилия, фамилия, пол и др. c
  • зеленый для 'Anne', 'Smith', 'jake@gmail.com', et c
  • фиолетовый для bigserial (по какой-то причине цвет не отображается в кодовом блоке stackoverflow)

Может быть, через расширение или через настройки vscode?

...