Перейти к основному содержимому

Быстрый поиск

Быстрый поиск — это палитра команд редактора.
Он показывает команды, доступные на текущей вкладке. Начните поиск с #, @ или :, чтобы вместо этого искать по диаграмме и перейти к таблице, столбцу, комментарию или заметке.

Откройте его сочетанием Ctrl + K (Windows/Linux) или ⌘ + K (Mac) либо нажмите кнопку Search на панели инструментов.
Закрывает его то же сочетание клавиш, а также клавиша Esc и щелчок вне панели. При открытии он закрывает окно «Свойства таблицы», конструктор темы, окно выбора Display Language, окно Export image и окно «Сопоставить столбцы», в котором при этом сбрасывается сделанный выбор. Он не открывается, пока редактируется ячейка таблицы, заметка, имя группы таблиц или ячейка на вкладке «Словарь».

Сразу после кнопки Search на панели инструментов находится кнопка Explorer. Она открывает и закрывает Обозреватель — дерево диаграммы, закрепленное у левого края холста, с Поиском и заменой в верхней части.
При открытии палитры Обозреватель остается открытым, и Esc тогда закрывает только палитру. Сочетание Ctrl + F (Windows/Linux) или ⌘ + F (Mac), нажатое в палитре, закрывает ее и переводит фокус клавиатуры в поле поиска Обозревателя, открывая поиск в Обозревателе, если Обозреватель не отображается. В отличие от пункта Toggle Explorer, это сочетание никогда не закрывает Обозреватель из палитры — см. Открытие и закрытие. Пока открыт просмотр различий, путешествие во времени или предварительный просмотр Автоматического размещения, редактор не обрабатывает это сочетание: палитра остается открытой, а сочетание передается браузеру или хосту — см. Панель поиска браузера.
Хост, встраивающий редактор, может привязать Быстрый поиск к другому сочетанию клавиш, и тогда его показывает всплывающая подсказка кнопки Search — см. Сочетания клавиш.

Открытие палитры с помощью ⌘ + K, затем переход к таблице по запросу #pay, к столбцу по запросу @price и к комментарию таблицы по запросу

Поиск и навигация​

Вводите текст, чтобы отфильтровать список. При каждом нажатии клавиши поиск заново выполняется по всему текущему списку, поэтому удаление символов или ввод нового слова вместо того, по которому ничего не нашлось, возвращает подходящие пункты.
Поиск нечеткий и охватывает как название пункта, так и ключевые слова, показанные рядом с ним. Например, в подменю Import запрос sdl находит GraphQL, dbdiagram — DBML, а azimutt — AML. Пункт находится и при небольшой опечатке, как New Table по запросу tabel и Import по запросу imprt, но пункт, лишь отдаленно похожий на введенный текст, не отображается: по запросу memo в списке остается только New Memo. Пункт, название или ключевые слова которого содержат введенный текст без учета регистра, отображается всегда, а если нечеткий поиск его пропускает, он идет после нечетких совпадений. Введенный текст подсвечивается везде, где пункт его содержит, без учета регистра.
Если язык интерфейса не английский, команды и пункты подменю находятся также по их английским названиям и ключевым словам, которые в списке не показываются, поэтому new table находит New Table, на каком бы языке он ни отображался.
Перемещайтесь по списку клавишами ↑ и ↓ — список закольцован с обоих концов — и запускайте подсвеченный пункт клавишей Enter. Список прокручивается так, чтобы подсвеченный пункт оставался на виду, а в низкой панели редактора он сжимается до места под полем поиска, поэтому до каждого пункта по-прежнему можно добраться, а подсвеченный остается на виду. Команда, у которой есть собственное сочетание клавиш, показывает его в конце своей строки: справа, а при языке интерфейса с письмом справа налево — слева. Пока метод ввода еще выполняет набор, например в середине корейского слога, клавиши ↑, ↓ и Enter обрабатываются им: они не перемещают подсветку и не запускают пункт.

Такие пункты, как Database, Import или Auto Layout, открывают подменю: пункты подменю заменяют список, а поле поиска очищается. Подменю Name View, Database, Bracket, Language, двух стилей имен, Schema SQL: Statements, Schema SQL: Header, Theme и Display Language отмечают текущий вариант и открываются с подсветкой на нем, поэтому Enter его сохраняет; остальные подменю открываются без подсвеченного пункта.
Фильтрация всегда применяется только к текущему списку, а вернуться на уровень выше нельзя, поэтому, чтобы начать заново, закройте и снова откройте палитру. Внутри подменю #, @, : и ? — обычный текст, а не префиксы.

Что показывает палитра​

Список зависит от текущей вкладки. На каждой вкладке он начинается с пункта Tab, который переключает на Entity Relationship Diagram, Visualization, Schema SQL, Code Generator, Dictionary или Settings, кроме вкладки, на которой вы уже находитесь.

На вкладке ERD: Name View и до четырех строк, позволяющих сформировать физические имена заново, затем Database, Import, Import and Add и Export, затем New Table, New Memo, New Table Group и Group Selected Tables, четыре типа связей и Auto Layout. Таблицы здесь не перечисляются; введите #, чтобы перейти к одной из них.
Пункт Name View открывает Physical Names, Logical Names и Both Names, где текущий режим отмечен галочкой, и выбор переключает режим так же, как пункт Name View контекстного меню холста, — см. Переключение режима отображения. Он отображается только на вкладке ERD, в том числе в редакторе только для чтения.
Строки формирования различаются ключевыми словами рядом с ними. Derive Physical Name Again с ключевым словом column заново формирует физическое имя столбца в фокусе. Derive Physical Names Again представлен тремя строками: с table — для таблицы, в которой находится фокус, ее имени и всех столбцов; с selected tables — для выделенных таблиц, пока выделено две или больше; с whole document — для всех таблиц диаграммы. Каждая строка отображается, только пока ей есть что охватить, и ни одна не отображается в редакторе только для чтения.
Пункт New Memo не отображается, пока View Option → Memos скрывает заметки. New Table Group начинает рисование группы таблиц на холсте, а Group Selected Tables помещает выделенные таблицы в новую группу и открывает ее имя для ввода. Оба пункта не отображаются, пока View Option → Table Groups скрывает группы, а для Group Selected Tables также нужна хотя бы одна выделенная таблица. В их строках показаны сочетания клавиш: Alt + G (Windows/Linux) или ⌥ + G (Mac) для рисования группы и T, затем G для группировки выделенных таблиц.
Эти пункты выполняют те же команды, что и контекстное меню холста, кроме тех, что выполняют команды меню таблицы: Group Selected Tables выполняет его пункт Group selected tables, а строки формирования с column, table и selected tables — его пункты Derive Physical Name Again или Derive Physical Names Again, применяя их к фокусу или выделению, а не к месту щелчка правой кнопкой мыши. View Option и Diff Viewer есть только в контекстном меню. Пункт Export предлагает те же json, Schema SQL и Image, что и контекстное меню, а ввод png или svg внутри него находит Image.
О том, что делают каждый формат, Импорт с добавлением и экспорт изображения, см. Импорт и экспорт файлов, а о том, на что влияет выбор базы данных, — Работа с таблицами.

На вкладке «Схема SQL»: снова Database, а также Bracket, который задает символ кавычек вокруг имен таблиц, столбцов, ограничений и индексов в сгенерированном SQL — SingleQuote, DoubleQuote, Backtick или None, чтобы не заключать их в кавычки вовсе. Затем Schema SQL: Statements и Schema SQL: Header, которые предлагают тот же выбор, что и панель параметров вкладки, но перечисляют только то, что записывает выбранная база данных, и Schema SQL: Options panel, который показывает или скрывает эту панель. О том, что записывает каждый вариант, см. Схема SQL.

На вкладке «Генератор кода»: Database, Bracket, пока выбран язык Doctrine, JPA или SeaORM, затем Language, Table Name Case, Column Name Case и Code Generator: Options panel, который показывает или скрывает панель параметров вкладки. О том, что создает каждый целевой формат, см. Генератор кода.

На вкладках «Визуализация», «Словарь» и «Настройки» нет собственных команд, только Tab и описанные ниже команды, которые есть на каждой вкладке.

Ближе к концу списка каждой вкладки, в том числе в редакторе только для чтения, находится пункт Toggle Explorer со своим сочетанием клавиш: Ctrl + F (Windows/Linux) или ⌘ + F (Mac). Его также находит ввод find, replace, rename, tree, outline или objects.
Его запуск закрывает палитру и делает то же, что это сочетание клавиш на холсте. Пока кнопка Explorer на панели инструментов выглядит нажатой, то есть пока Обозреватель открыт на вкладке ERD и не скрыт режимом дзен, пункт закрывает Обозреватель. В противном случае он переключает на вкладку ERD и открывает поиск в Обозревателе с курсором ввода в поле поиска — см. Открытие и закрытие. Пункт не отображается, пока открыт просмотр различий, путешествие во времени или предварительный просмотр Автоматического размещения.

Тема и язык интерфейса​

После Toggle Explorer на каждой вкладке, в том числе в редакторе только для чтения, идут пункты Theme и Display Language. Каждый из этих пунктов отображается только там, где редактор предлагает соответствующее окно выбора, как показывают кнопки Theme и Display Language на панели инструментов. Веб-приложение, Google Drive, VS Code, IDE JetBrains и Obsidian предлагают и то и другое — см. В разных хостах.

Пункт Theme открывает System, Light и Dark с отмеченным текущим оформлением. Выбор одного из них меняет только оформление и сохраняет оттенок серого и цвет акцента, как и кнопки Appearance в конструкторе темы.
Пункт Display Language открывает System, а затем 25 языков, каждый под собственным названием и в том же порядке, что и в окне выбора, с отмеченным текущим вариантом. Здесь язык находится также по английскому названию или по коду: german или de-DE находит Deutsch, а korean — 한국어.
Выбор в любом из них применяется сразу, закрывает палитру и сохраняется так же, как выбор, сделанный в конструкторе темы или в окне выбора Display Language. Если язык интерфейса меняется, пока палитра открыта, список переключается на него, сохраняя введенный текст и текущее подменю.

Режим только для чтения​

Редактор с атрибутом readonly не перечисляет ни одной команды, которая изменяла бы диаграмму, а не показывает ее приглушенной.
На вкладке ERD он сохраняет Tab, Name View, Database, Export со всеми тремя его пунктами, Toggle Explorer, Theme и Display Language. Он не содержит Import, Import and Add, строк формирования, New Table, New Memo, New Table Group, Group Selected Tables, четырех типов связей и Auto Layout.
Остальные вкладки перечисляют то же, что и в любом редакторе. Везде, где они перечислены, Tab, Name View, Database, Bracket, Language и оба стиля имен меняют только этот экран и никогда не сохраняются — см. Режим только для чтения в разделе «Настройки».
Если редактор становится доступным только для чтения или снова доступным для записи, пока палитра открыта, список рисуется заново с тем, что редактор тогда предлагает, и поиск по набранному выполняется заново. Подменю, строка которого исчезла, уступает место верхнему уровню.

Префиксы #, @ и : ищут по диаграмме, как в любом редакторе, а переход выделяет то, на чем оказывается, как описано в разделе Поиск по диаграмме. В редакторе только для чтения это единственный способ что-либо выделить: нажатие на холст ничего не выделяет, а щелчок без движения снимает выделение, сделанное переходом, — см. Режим только для чтения.

Поиск по диаграмме​

Начните поиск с префикса, чтобы искать по диаграмме, а не по командам: # для таблиц, @ для столбцов, : для комментариев и заметок или ?, чтобы показать список префиксов. Префикс работает на любой вкладке. Он действует, только если стоит первым символом, причем пробелы перед ним не учитываются. Пробел после него необязателен, поэтому #users и # users — один и тот же запрос, а полноширинные #, @, : и ?, которые вводит японский или китайский метод ввода, тоже считаются префиксами.
Пока поле ввода на верхнем уровне пусто, строка под ним показывает четыре префикса; щелкните один из них, чтобы ввести его. Пока действует префикс, в конце поля ввода указана его область поиска: Tables, Columns, Comments & memos или Help. Удалите префикс, чтобы вернуть команды.

Префикс # показывает таблицы, каждую с надписью Table рядом. Строка называет свою таблицу так, как ее называет режим отображения имен, например Accounts (users) в режиме Both Names, а таблица, у которой нет имени для показа, отображается как unnamed. Если после # ничего нет, таблицы в любом режиме отсортированы по имени, а не по логическому имени. Текст после # нечетко, как описано выше, сопоставляется с именем и логическим именем каждой таблицы, что бы ни показывал режим, поэтому #accounts показывает users даже в режиме Physical Names. Первыми идут таблицы, имя или логическое имя которых содержит этот текст. Имена групп таблиц и имена индексов не участвуют в поиске ни с одним префиксом; Поиск и замена ищет и по тем, и по другим.

Префикс @ показывает столбцы, и рядом с каждым указано, где он находится, например users.email · Column. Текст после @ должен входить в имя или логическое имя столбца без учета регистра и независимо от того, что показывает режим отображения имен; это сопоставление не нечеткое. Каждое имя, которое содержит текст, дает отдельную строку: совпадение в логическом имени показывает логическое имя с надписью users.email · Logical name рядом, поэтому столбец, у которого текст содержат и имя, и логическое имя, показывается дважды. Текст перед первой точкой . сужает поиск до таблиц, имя или логическое имя которых его содержит: @users.em показывает столбцы, содержащие em, в таблицах, имя или логическое имя которых содержит users, @users. — столбцы этих таблиц, а @.em ищет во всех таблицах. Собственное логическое имя таблицы не дает строки при @; его находит #. Если после @ ничего нет, каждый столбец показывается один раз, по своему имени.

Префикс : показывает комментарии таблиц, комментарии столбцов и заметки, но никогда не имена и не логические имена. Каждая строка показывает фрагмент текста вокруг совпадения с надписью users · Table comment, users.email · Column comment или Memo рядом. Текст после : должен входить в комментарий или заметку без учета регистра, как и с @. Если после : ничего нет, показываются непустые комментарии и заметки. Пока View Option → Memos скрывает заметки, : не показывает ни одной заметки.

Префиксы @ и : показывают строки в том порядке, в котором они хранятся в документе: таблица за таблицей, комментарий каждой таблицы перед ее столбцами в порядке столбцов, а заметки в конце. При @ строка логического имени столбца идет перед строкой его имени.
Расположение рядом со строкой @ или : в любом режиме указывается по именам таблицы и столбца, а не по их логическим именам.

Префикс ? показывает Tables, Columns и Comments & memos, а текст после ? фильтрует их. Выбор одного из них заменяет введенный текст его префиксом и оставляет палитру открытой.

Список с префиксом содержит все совпадения, сколько бы их ни было. Если поиск с префиксом ничего не находит, список остается пустым и никакого сообщения не появляется.

Выбор таблицы, столбца, комментария или заметки закрывает палитру и переключает на вкладку ERD, если открыта другая вкладка.
Холст прокручивается к выбранному элементу, если тот еще не виден достаточно хорошо, — см. Куда ведет переход. Затем таблица становится единственной выделенной и переносится на передний план. Если фокус еще не был в этой таблице, он переходит на первую ячейку ее заголовка: на имя, а в режимах Logical Names и Both Names — на логическое имя.
Заметка становится единственной выделенной и переносится на передний план. Для столбца или комментария его таблица становится единственной выделенной, переносится на передний план, а фокус переходит на ячейку, содержащую текст. Если режим не рисует эту ячейку, фокус переходит на ячейку, нарисованную на ее месте: логическое имя, найденное в режиме Physical Names, ведет к имени, а имя, найденное в режиме Logical Names, — к логическому имени. Комментарий, скрытый параметром вида таблиц, ведет к имени рядом с ним, а в режиме Logical Names — к логическому имени.
Ни один переход не начинает и не завершает рисование связи.

Для параметров Match Case, Match Whole Word или Use Regular Expression, а также для замены текста используйте Поиск и замену в верхней части Обозревателя.

Если ни одна команда не подходит​

Если на верхнем уровне без префикса ни одна из показанных команд не содержит введенный текст без учета регистра, после команд появляются три строки: Search tables for "…", Search columns for "…" и Search comments & memos for "…", каждая со своим префиксом в качестве значка. Выбор одной из них вставляет этот префикс перед введенным текстом, так что users превращается в #users, а палитра остается открытой с этими результатами.
Если поиск не находит ни одной команды, над списком появляется надпись No commands match, а в списке остаются только три строки. Если он находит только команды, которые не содержат этот текст, они идут первыми: на вкладке ERD без выделенной таблицы запрос tables показывает New Table, Database и, если он предлагается, New Table Group перед тремя строками. Если таблица выделена, пункт Group Selected Tables, если он предлагается, содержит tables, поэтому три строки не появляются.
Внутри подменю поиск, который ничего не находит, оставляет список пустым, и никакого сообщения не появляется.

Поиск на корейском языке​

Запрос, содержащий хангыль, сопоставляется также по отдельным буквам: в командах, в подменю и с любым префиксом.
Каждый промежуточный шаг, через который проходит корейский метод ввода, по-прежнему находит строку, которую вы набираете, поэтому ㅅ, 사, 상, 사요 и 사용 все находят 사용자. Запрос только из начальных согласных сопоставляется с начальными согласными слогов, а пробелы пропускаются: ㅅㅇㅈ находит 사용자, а ㅈㅁ — 주문 내역. Сочетание согласных, которое метод ввода Windows составляет из двух начальных согласных, набранных подряд, например ㅄ, считается двумя буквами (ㅂㅅ), а двойная согласная, например ㄲ, остается одной буквой. Текст, хранящийся в разложенной форме, как имена файлов в macOS, сопоставляется так, как если бы он был в составной форме.
Первыми идут строки, весь текст которых побуквенно или по начальным согласным совпадает с запросом, затем строки, начинающиеся с него, затем строки, содержащие его. С префиксами @ и : строки, содержащие запрос в том виде, в каком он введен, идут раньше всех остальных, в порядке документа. Подсветка охватывает целые слоги, поэтому 상 подсвечивает 사용 в 사용자.