Usage

There are currently two official interfaces: The ‘Widgets Box Modeland the ‘QML Box Model’. The former uses the Qt Widgets Toolkit, prioritizing resource efficiency and low-latency UIs but has limitations considering customization. The latter, built on QML, provides rich customization features, but suffers glitches on some systems. Since both interfaces have the same design concept this guide applies to both of them (Please report a bug if not).

Input line

Besides its primary function, the input line provides an input hint and contains the settings button. The input hint, displayed after the entered text, varies based on the context. For empty triggered queries, it shows the query handler’s synopsis, if available, otherwhise it shows the input action text of the selected item, if available, or is empty. The settings button, located in the top right corner, appears on hover or when the current query is processing.

The content entered into the input line is stored in the input history when the window is hidden. This input history can be used to search former queries. When the input has been manually altered, it functions as a pattern for substring matching within the history entries. The empty pattern matches any entry (browsing instead of search). When the results list is hidden or the first item is selected searches the input history. When holding Shift this condition is not required and can be used too for bidirectional iteration.

Results list

The results list displays results of a query. Each item has an icon, a title and a description. Almost all items have at least one action associated, which can be directly activated. Most items provide several actions that can be activated using the action list. Items may also provide an input action text that can be used to replace the input text. Its semantic is loosely defined. It may be a completion but also an evaluation or something else.

The results list has three states: Hidden, show matches and show fallbacks. If a query yields matches it shows the matches. If a global query yields no matches it shows the fallbacks. If a triggered query yields no matches it stays hidden. The fallbacks state can also be activated explicitly.

Key map

As a reference the following table lists the keys you can use to control Albert:

Key Action
Esc Hide Albert.
Hold Alt/⌥
Ctrl/⌘+
Activate action mode.
Hold Meta/⌃ Activate Fallback mode.
Hold Shift Activate history search mode.
Tab Activate input action of the selected item (evaluation, completion, etc).

Enter
+O
Activate item.
Ctrl/⌘+, Open settings window.
,,
PgUp,PgDn
Navigation in item lists.
+Q
Alt+F4
Quit Albert (Depends on settings).
Ctrl/⌘+H
Ctrl/⌘+J
Ctrl/⌘+K
Ctrl/⌘+L
Vim bindings. Synthesize to arrows.
Ctrl/⌘+N
Ctrl/⌘+P
Emacs bindings. Synthesize to arrows.

TODO

  • Input action (completion, evaluation, …)
  • Items and actions
  • Fallbacks