Window Hints¶
Window Hintsは、各ウィンドウの上にアプリアイコンとキーを表示し、キー入力やクリックで対象ウィンドウへ切り替える機能です。
他のウィンドウに隠れたウィンドウや別のSpaceにあるウィンドウも候補にできます。
基本設定¶
全設定に、Window Hintsの全項目、デフォルト値、各項目の説明を掲載しています。
hotkeyを指定したときだけホットキーが登録されます。ホットキーを押すとヒントが表示されます。表示中に次の操作ができます。
- 表示されたキーを入力してウィンドウを選択
- ヒントをクリックしてウィンドウを選択
- ヒント外をクリック、
escape、または同じホットキーを押して閉じる 1から9を押して対応するSpaceへ移動
Note
完全に隠れたウィンドウのプレビュー表示には画面収録の許可が必要です。
ヒントをカスタマイズ¶
ヒント表示¶
"windowHints": {
"hint": {
"chars": [
"A", "S", "D", "F", "G", "H", "J", "K", "L",
"Q", "W", "E", "R", "T", "Y", "U", "I", "O", "P",
"Z", "X", "C", "V", "B", "N", "M"
],
"padding": 12,
"cornerRadius": 12,
"icon": {
"size": 72
},
"key": {
"minWidth": 72,
"fontSize": 48
},
"title": {
"show": true,
"fontSize": 16,
"maxSize": 72
}
},
"focusedWindowHighlight": {
"borderColor": { "red": 0.95, "green": 0.68, "blue": 0.40, "alpha": 0.95 },
"borderWidth": 13
},
"occlusion": {
"preview": {
"enabled": true,
"mode": "background",
"width": 140,
"alpha": 0.64,
"maxFillRatio": 0.5
}
}
}
occlusion.preview.maxFillRatioは、backgroundモードのプレビュー箱の合計面積が画面面積に占めてよい最大割合です。候補が多く合計面積がこれを超える場合は、すべての箱を一律に縮小して重なりを防ぎます。
ヒントの背景色、文字色、枠線色は、hint.state、hint.icon.state、hint.key.state、hint.title.stateで変更できます。各設定ではnormal、dimmed、occluded、activeの状態ごとに色や透明度を指定できます。
別のSpaceにある候補に付くSpace番号バッジは、Space番号に応じた固定の配色で表示されます。
ヒントキーの先頭文字を指定¶
アプリやウィンドウタイトルに応じて、ヒントキーの先頭文字を固定できます。ルールは上から順に評価され、最初に一致したものが使われます。
"windowHints": {
"hint": {
"prefixOverrides": [
{
"match": {
"bundleID": "md.obsidian",
"titleGlob": "Minerva*"
},
"prefix": "M"
}
]
}
}
match.bundleIDまたはmatch.titleGlobの少なくとも一方を指定します。titleGlobでは*と?を使用でき、大文字と小文字は区別されます。prefixはhint.charsに含まれる1文字または2文字で指定します。- 複数のヒントキーが互いの先頭と一致しないよう、残りの文字は自動調整されます。
操作をカスタマイズ¶
ナビゲーション¶
"windowHints": {
"navigation": {
"focusBack": {
"key": "tab"
},
"direction": {
"hints": {
"keys": {
"left": "h",
"down": "j",
"up": "k",
"right": "l",
"upLeft": "y",
"upRight": "u",
"downLeft": "b",
"downRight": "n"
}
},
"direct": {
"modifiers": ["ctrl", "alt"],
"keys": {
"left": "h",
"down": "j",
"up": "k",
"right": "l"
}
}
},
"spaces": {
"numbers": true,
"prev": { "key": "," },
"next": { "key": "." }
},
"areaHints": {
"key": "space"
},
"windowLayouts": {
"key": "l",
"jinraiMode": true
},
"applicationHints": {
"key": ";",
"jinraiMode": true
}
}
}
ヒント表示中のナビゲーションキーとhint.charsが重複した場合は、ナビゲーションキーが優先されます。方向移動は現在のSpaceにあるウィンドウを対象にします。
navigation.windowLayouts.keyを設定すると、Window Hints表示中にWindow Layoutsのピッカーへ切り替えられます。
"jinraiMode": trueを指定すると、通常表示からの遷移でもJINRAI Modeを開始します。
ヒントを開かずに方向移動¶
navigation.direction.directを設定すると、Window Hintsを開かずにグローバルホットキーで隣のウィンドウへ直接フォーカスを移動できます。
modifiersとkeysの両方を指定したときだけ有効になります。keysにはhints.keysと同じ方向名(left、down、up、right、upLeft、upRight、downLeft、downRight)を指定します。modifiersにfnは使用できません。- Window Hintsの表示中は
direction.hints.keysが優先され、directのホットキーは発火しません。
選択対象とカーソル¶
"windowHints": {
"behavior": {
"selection": {
"swapWindowFrame": {
"modifiers": ["shift"]
}
},
"cursor": {
"onStart": true,
"onSelect": true
},
"candidates": {
"includeOtherSpaces": true,
"includeActiveWindow": true
}
}
}
別のSpaceにある候補はSpace番号付きで画面下部に表示されます。完全に隠れたウィンドウも同じ領域へプレビュー付きで表示されます。
フルスクリーンにしたウィンドウ(専用Space)も候補に含まれ、Space番号の代わりにFバッジが付きます。選択するとそのフルスクリーンSpaceへ切り替わります。