Spec-Zone.ru › MySQL Shell 9.2

14.3 Настройка приглашения

Приглашение MySQL Shell можно настроить с помощью файлов тем приглашения. Для настройки файла темы приглашения необходимо либо установить переменную среды MYSQLSH_PROMPT_THEME со значением имени файла темы приглашения, либо скопировать файл темы приглашения в каталог ~/.mysqlsh/ в Linux и macOS, или в каталог %AppData%\Roaming\MySQL\mysqlsh\ в Windows. Файл должен иметь имя prompt.json, и MySQL Shell необходимо перезапустить, чтобы изменения вступили в силу.

Рисунок 14.1 Приглашение MySQL Shell

MySQL Shell prompt showing changes of input language JavaScript to SQL, SQL to Python, Python back to JavaScript.

Приглашение может состоять из шести частей:

  • Статус: Указывает, является ли это производственной системой и было ли потеряно соединение.

  • MySQL: Напоминание о том, что вы работаете с базой данных MySQL.

  • Соединение: Указывает хост, к которому вы подключены, и порт, по которому используется SSL.

  • Схема: Текущая схема по умолчанию.

  • Режим: Используемый режим: JS = JavaScript, PY = Python и SQL = SQL.

  • Конец: Приглашение заканчивается >.

Путь к файлу конфигурации пользователя для каталога mysqlsh, где находится prompt.json, может быть изменён на всех платформах путём определения переменной среды MYSQLSH_USER_CONFIG_HOME. Значение этой переменной заменяет %AppData%\Roaming\MySQL\mysqlsh\ в Microsoft Windows или ~/.mysqlsh/ в Unix.

В Microsoft Windows файлы тем приглашения находятся в следующем каталоге: %programfiles%\MySQL\MySQL Shell 8.0\share\mysqlsh\prompt\.

В macOS файлы тем приглашения находятся в следующем каталоге: /usr/local/mysql-shell/share/mysqlsh/prompt.

В Linux файлы тем приглашения находятся в следующем каталоге: /usr/share/mysqlsh/prompt/.

Формат файла темы приглашения описан в файле README.prompt. Также включены примеры файлов тем приглашения, например, prompt_256.json:

В примере темы приглашения prompt_256.json есть объект с классами disconnected%host% и %is_production%. Переменные определены в этом файле или взяты из самого MySQL Shell, например, %host и %port. В данном примере хост включен в переменную окружения PRODUCTION_SERVERS.

  "variables" : {
        "is_production": {
        "match" : {
        "pattern": "*;%host%;*",
        "value": ";%env:PRODUCTION_SERVERS%;"
        },

Цвет фона и текста задаются элементами bg и fg соответственно. Эти элементы позволяют настроить цвета, используемые в приглашении. Укажите цвета одним из следующих способов:

  • По имени: Используйте цвет, определённый по имени.

  • По индексу: Используйте значение от 0 до 255 (включительно), где 0 - черный, 63 - светло-синий, 127 - пурпурный, 193 - жёлтый, а 255 - белый.

  • По RGB: Используйте значение в формате #rrggbb. Терминал должен поддерживать TrueColor.

В этом примере используются именованные цвета, с текстовым выводом PRODUCTION, если булевский элемент is_production возвращает TRUE.

    "production" : {
    "text": " PRODUCTION ",
    "bg": "red",
    "fg": "white"
    }

Эти элементы выводят приглашение в следующем формате:

Рисунок 14.2 Приглашение MySQL Shell

Customized prompt using prompt_256.json file.

Отображение цветов зависит от поддержки терминала. Большинство терминалов поддерживают 256 цветов в Linux и macOS. В Windows поддержка цвета требует либо сторонней программы-терминала с поддержкой ANSI/VT100-экранов, либо Windows 10. По умолчанию MySQL Shell пытается определить тип терминала и соответствующим образом обработать цвета. Если автоматическое определение не работает для вашего типа терминала или если вы хотите изменить режим цвета из-за требований доступности или по другим причинам, вы можете определить переменную среды MYSQLSH_TERM_COLOR_MODE, чтобы принудительно использовать MySQL Shell в определённом режиме цвета. Возможные значения для этой переменной среды - rgb, 256, 16 и nocolor.

При запуске, если в файле темы приглашения обнаружена ошибка, выводится сообщение об ошибке, и используется тема приглашения по умолчанию. Некоторые примеры файлов тем приглашения требуют специального шрифта (например, SourceCodePro+Powerline+Awesome+Regular.ttf). Если вы установите переменную среды MYSQLSH_PROMPT_THEME в пустое значение, MySQL Shell будет использовать минимальное приглашение без цвета.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-shell-9.2-en/mysql-shell-prompt-themes.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API