メインコンテンツまでスキップ

クイック検索

クイック検索はエディタのコマンドパレットです。
現在のタブで利用できるコマンドを一覧表示します。検索を #、@、: で始めると、代わりにダイアグラムを検索し、テーブル、カラム、またはコメントやメモへ移動できます。

Ctrl + K (Windows/Linux) または ⌘ + K (Mac) で開くか、ツールバーの Search をクリックして開きます。
同じショートカットで閉じ、Esc やパネルの外側のクリックでも閉じます。開くと、テーブルのプロパティ、テーマビルダー、Display Language のピッカー、Export image ダイアログ、Map Columns が閉じ、Map Columns で選んでいた内容は破棄されます。テーブルのセル、メモ、テーブルグループの名前、辞書タブのセルを編集している間は開きません。

ツールバーで Search のすぐ隣にあるボタンは Explorer です。このボタンはエクスプローラーを開閉します。エクスプローラーはキャンバスの左側にドッキングされたダイアグラムのツリーで、その上部に検索と置換があります。
パレットを開いてもエクスプローラーは開いたままで、このとき Esc はパレットだけを閉じます。パレットで Ctrl + F (Windows/Linux) または ⌘ + F (Mac) を押すと、パレットが閉じてキーボード操作がエクスプローラーの検索フィールドに移ります。エクスプローラーが表示されていない場合は、エクスプローラーを検索の状態で開きます。Toggle Explorer の項目とは異なり、パレットでこのキーを押してもエクスプローラーが閉じることはありません。開き方と閉じ方を参照してください。Diff Viewer、Time Travel、自動レイアウトのプレビューのいずれかが開いている間は、エディタはこのキーを処理せず、パレットは開いたままで、キーはブラウザまたはホストに渡されます。ブラウザの検索バーを参照してください。
エディタを組み込むホストはクイック検索を別のキーに割り当てることができ、その場合は Search のツールチップにそのキーが表示されます。ショートカットを参照してください。

⌘ + K でパレットを開き、#pay でテーブルへ、@price でカラムへ、 でテーブルのコメントへ移動する

検索と移動​

入力すると一覧が絞り込まれます。キーを押すたびに表示中の一覧全体をあらためて検索するため、文字を削除したり、何も見つからなかった語の上から新しい語を入力したりすると、一致する項目が再び表示されます。
マッチングはあいまい検索で、項目名と横に表示されるキーワードの両方を対象にします。例えば Import サブメニューでは、sdl で GraphQL、dbdiagram で DBML、azimutt で AML が見つかります。多少の入力ミスがあっても項目は見つかり、tabel で New Table、imprt で Import が見つかりますが、入力した内容にわずかに似ているだけの項目は除外されます。memo で表示されるのは New Memo だけです。名前またはキーワードに入力した文字列を大文字と小文字を区別せずに含む項目は必ず表示され、そのうちあいまい検索で一致しなかった項目は、あいまい検索で一致した項目の後に並びます。入力した文字列は、大文字と小文字を区別せずに、項目に含まれている箇所がすべてハイライトされます。
英語以外の表示言語では、コマンドとサブメニューの項目は、一覧には表示されない英語の名前とキーワードでも見つかります。そのため、どの言語で表示されていても、new table で New Table が見つかります。
一覧の移動は ↑ と ↓ で行い、両端で折り返します。選択中の項目は Enter で実行します。一覧は選択中の項目が見える位置にスクロールし、高さの低いエディタのペインでは検索ボックスの下の余白に収まるように縮むため、すべての項目に届き、選択中の項目も見えたままです。独自のショートカットを持つコマンドは、そのショートカットを行の末尾に表示します。通常は右側で、右から左に書く表示言語では左側です。韓国語の音節の入力途中など IME の変換中は、↑、↓、Enter は IME が受け取るため、選択も移動せず、項目も実行されません。

Database、Import、Auto Layout などの項目はサブメニューを開きます。サブメニューの項目が一覧を置き換え、検索ボックスはクリアされます。Name View、Database、Bracket、Language、2 つの名前のケース、Schema SQL: Statements、Schema SQL: Header、Theme、Display Language のサブメニューは、現在の選択にチェックを付け、その項目を選択した状態で開くため、Enter を押すと現在の選択のままになります。それ以外のサブメニューは、何も選択していない状態で開きます。
絞り込みは常に表示中の一覧だけに適用され、上の階層へ戻る方法はありません。最初からやり直すにはパレットを閉じて開き直します。サブメニューの中では、#、@、:、? はプレフィックスではなく、ただの文字として扱われます。

パレットに表示される内容​

一覧の内容は現在のタブによって変わります。どのタブでも先頭は Tab で、Entity Relationship Diagram、Visualization、Schema SQL、Code Generator、Dictionary、Settings に切り替えます。現在のタブは一覧から除外されます。

ERD タブでは、Name View と物理名を再生成する最大 4 つの行、次に Database、Import、Import and Add、Export、続いて New Table、New Memo、New Table Group、Group Selected Tables、4 種類のリレーションシップ、Auto Layout を表示します。テーブルはここには表示されません。テーブルへ移動するには # を入力します。
Name View は、現在の表示にチェックを付けて Physical Names、Logical Names、Both Names を開き、選ぶとキャンバスのコンテキストメニューの Name View と同じように表示が切り替わります。表示の切り替えを参照してください。ERD タブにだけ表示され、読み取り専用のエディタでも表示されます。
再生成の行は、横に表示されるキーワードで区別します。横に column がある Derive Physical Name Again は、フォーカスしているカラムの物理名を再生成します。Derive Physical Names Again には 3 つの行があります。table の行はフォーカスがあるテーブルの名前とすべてのカラム、selected tables の行は 2 つ以上のテーブルを選択している間の選択しているテーブル、whole document の行はダイアグラムのすべてのテーブルが対象です。どの行も対象がある間だけ表示され、読み取り専用のエディタではどれも表示されません。
New Memo は View Option → Memos でメモを非表示にしている間は表示されません。New Table Group はキャンバス上でテーブルグループの描画を始め、Group Selected Tables は選択しているテーブルを新しいグループに入れて、その名前を入力できる状態にします。どちらも View Option → Table Groups でグループを非表示にしている間は表示されず、Group Selected Tables はさらにテーブルを 1 つ以上選択している必要があります。どちらの行にもキーが表示され、グループの描画は 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 が見つかります。
各形式、Import and Add、画像の書き出しの内容はファイルの読み込みと書き出しを、データベースの選択が何に影響するかはテーブル関連機能を参照してください。

Schema SQL タブでは、再び Database と Bracket を表示します。Bracket は、生成する SQL でテーブル名、カラム名、制約名、インデックス名を囲む引用符を設定します。SingleQuote、DoubleQuote、Backtick、または引用符を付けない None から選びます。続いて Schema SQL: Statements と Schema SQL: Header を表示します。これらはタブのオプションパネルと同じ選択を行いますが、選択しているデータベースが書き出すものだけを表示します。さらに Schema SQL: Options panel を表示し、そのパネルの表示と非表示を切り替えます。各選択が何を書き出すかは Schema SQL を参照してください。

Code Generator タブでは、Database、言語が Doctrine、JPA、SeaORM のときは Bracket、続いて Language、Table Name Case、Column Name Case、Code Generator: Options panel を表示します。Code Generator: Options panel は、タブのオプションパネルの表示と非表示を切り替えます。各対象が生成する内容はコード生成を参照してください。

Visualization タブ、辞書タブ、設定タブには独自のコマンドはなく、Tab と、以下で説明するどのタブにも表示されるコマンドだけを表示します。

どのタブでも、読み取り専用のエディタでも、一覧の終わり近くに Toggle Explorer があり、そのショートカット Ctrl + F (Windows/Linux) または ⌘ + F (Mac) を表示します。find、replace、rename、tree、outline、objects と入力しても見つかります。
実行するとパレットが閉じ、キャンバスでショートカットを押したときと同じ動作をします。ツールバーの Explorer ボタンが押された状態で表示されている間、つまりエクスプローラーが ERD タブで開いていて Zen モードで隠れていない間は、エクスプローラーを閉じます。それ以外の場合は ERD タブに切り替わってエクスプローラーを検索の状態で開き、検索フィールドにキャレットを置きます。開き方と閉じ方を参照してください。Diff Viewer、Time Travel、自動レイアウトのプレビューのいずれかが開いている間は表示されません。

テーマと表示言語​

どのタブでも、Toggle Explorer の後に Theme と Display Language があり、読み取り専用のエディタでも表示されます。それぞれ、エディタがそのピッカーを提供している場合にだけ表示され、これはツールバーの Theme と Display Language のボタンの有無と同じです。Web アプリ、Google Drive、VS Code、JetBrains IDE、Obsidian はどちらも提供しています。各ホストでの設定を参照してください。

Theme は System、Light、Dark を開き、現在の外観にチェックが付いています。選ぶと外観だけが変わり、グレーカラーとアクセントカラーはそのまま残ります。テーマビルダーの Appearance ボタンと同じです。
Display Language は System と、続いて 25 の言語を開きます。各言語はその言語自身の名前で、ピッカーと同じ順序で並び、現在の選択にチェックが付いています。ここでは英語名やコードでも言語が見つかり、german や de-DE で Deutsch が、korean で 한국어 が見つかります。
どちらでも、選んだ内容はすぐに反映されてパレットが閉じ、テーマビルダーや Display Language のピッカーで選んだ場合と同じように保持されます。パレットを開いている間に表示言語が変わると、一覧はその言語に切り替わり、入力した内容と現在のサブメニューはそのまま残ります。

読み取り専用のエディタ​

readonly のエディタは、ダイアグラムを変更するコマンドを、薄く表示するのではなく、一覧に表示しません。
ERD タブでは、Tab、Name View、Database、3 つの項目をすべて持つ Export、Toggle Explorer、Theme、Display Language が残ります。Import、Import and Add、再生成の行、New Table、New Memo、New Table Group、Group Selected Tables、4 種類のリレーションシップ、Auto Layout は表示されません。
ほかのタブは、どのエディタとも同じものを表示します。表示される場所によらず、Tab、Name View、Database、Bracket、Language、2 つの名前のケースは、その画面だけを変え、保存されることはありません。設定の読み取り専用のエディタを参照してください。
パレットを開いている間にエディタが読み取り専用になった場合、または再び編集可能になった場合は、そのときエディタが提供する内容で一覧が描き直され、入力した内容で検索し直されます。項目がなくなったサブメニューは、最上位に戻ります。

#、@、: のプレフィックスは、どのエディタとも同じようにダイアグラムを検索し、移動すると、ダイアグラムの検索で説明しているとおり、移動先が選択されます。読み取り専用のエディタで何かが選択されるのは、これだけです。キャンバス上の押下は何も選択せず、動かさずにクリックすると、移動が選択したものが解除されます。読み取り専用のエディタを参照してください。

ダイアグラムの検索​

検索をプレフィックスで始めると、コマンドではなくダイアグラムを検索します。# はテーブル、@ はカラム、: はコメントとメモを検索し、? はプレフィックスを一覧表示します。プレフィックスはどのタブからでも使えます。プレフィックスとして扱われるのは先頭の文字だけで、その前の空白は無視されます。後ろの空白はあってもなくてもよく、#users と # users は同じ検索になります。日本語や中国語の IME が入力する全角の #、@、:、? もプレフィックスとして扱われます。
最上位の階層で入力欄が空の間は、その下の行に 4 つのプレフィックスが表示され、クリックするとそのプレフィックスが入力されます。プレフィックスが有効な間は、入力欄の末尾にその検索範囲として Tables、Columns、Comments & memos、Help のいずれかが表示されます。プレフィックスを削除すると、コマンドの一覧に戻ります。

# はテーブルを一覧表示し、それぞれの横に Table と表示します。各行は、Both Names での Accounts (users) のように、名前の表示に従ってテーブルの名前を表示し、表示する名前のないテーブルは unnamed として表示されます。# の後に何も入力していない場合は、どの表示でも、論理名順ではなく名前順に並びます。# の後の文字列は、名前の表示が何を表示しているかにかかわらず、各テーブルの名前と論理名に対して上記と同じあいまい検索で照合されるため、Physical Names でも #accounts で users が表示されます。名前または論理名にその文字列を含むテーブルが先に並びます。テーブルグループの名前とインデックス名は、どのプレフィックスでも検索されません。検索と置換はどちらも検索します。

@ はカラムを一覧表示し、それぞれの横に users.email · Column のようにその場所を表示します。@ の後の文字列は、名前の表示が何を表示しているかにかかわらず、大文字と小文字を区別せずにカラムの名前または論理名に含まれている必要があり、この照合はあいまい検索ではありません。文字列を含む名前は、それぞれ独立した行になります。論理名での一致は論理名を表示し、横に users.email · Logical name と表示されるため、名前と論理名の両方に文字列を含むカラムは 2 回表示されます。最初の . より前の文字列は、名前または論理名にその文字列を含むテーブルに検索を絞り込みます。@users.em は名前または論理名に users を含むテーブルから em を含むカラムを、@users. はそれらのテーブルのカラムを一覧表示し、@.em はすべてのテーブルを検索します。テーブル自身の論理名は @ では行にならず、# で見つかります。@ の後に何も入力していない場合は、各カラムを名前で 1 回ずつ一覧表示します。

: はテーブルのコメント、カラムのコメント、メモを一覧表示し、名前も論理名も対象にしません。各行には一致した箇所の前後のテキストの抜粋が表示され、その横に 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 を使う場合や、テキストを置換する場合は、エクスプローラーの上部にある検索と置換を使います。

コマンドが一致しないとき​

プレフィックスのない最上位の階層で、入力した文字列を大文字と小文字を区別せずに含むコマンドが一覧に 1 つもない場合は、コマンドの後に Search tables for "…"、Search columns for "…"、Search comments & memos for "…" の 3 行が続き、それぞれのアイコンにはそのプレフィックスが表示されます。いずれかを選ぶと入力した文字列の前にそのプレフィックスが入力され、例えば users は #users になり、パレットは開いたままその結果を表示します。
検索でコマンドが 1 つも見つからない場合は、一覧の上に No commands match が表示され、一覧にはその 3 行だけが表示されます。その文字列を含まないコマンドだけが見つかった場合は、それらが先に並びます。ERD タブでテーブルを選択していない場合、tables で New Table、Database、表示される場合は New Table Group が、その 3 行の前に表示されます。テーブルを選択している場合は、Group Selected Tables が表示されていれば、その名前が tables を含むため、その 3 行は表示されません。
サブメニューの中では、検索で何も見つからない場合、一覧は空になり、メッセージは表示されません。

韓国語での検索​

ハングルを含む検索は、コマンドでもサブメニューでも、どのプレフィックスでも、字母単位でも一致します。
韓国語の IME が入力の途中で経る各段階でも、入力しようとしている行が見つかり続けるため、ㅅ、사、상、사요、사용 はどれも 사용자 を見つけます。初声だけでできた検索は、空白を飛ばして各音節の初声と照合されます。ㅅㅇㅈ で 사용자 が、ㅈㅁ で 주문 내역 が見つかります。ㅄ のように、Windows の IME が続けて入力された 2 つの初声から組み立てる複合子音は、その 2 つ(ㅂㅅ)として扱われますが、ㄲ のような双子音は 1 文字のままです。macOS のファイル名のように分解された形で保存されているテキストは、合成された形と同じように一致します。
テキスト全体が字母単位または初声単位で検索と一致する行が最初に並び、次にその検索で始まる行、その次にその検索を含む行が並びます。@ と : では、入力したとおりの検索を含む行が、ドキュメント内の順序でこれらすべての前に並びます。ハイライトは音節単位で行われるため、상 では 사용자 の 사용 がハイライトされます。