Pickers
Built-in pickers
Section titled “Built-in pickers”/on an empty line opens the command picker: every slash command (including yours), fuzzy-filtered as you type, with descriptions./connectwith no arguments opens the world picker over your saved bookmarks.Ctrl+Ropens history search;Ctrl+Tsearches your aliases.
Inside any picker: type to filter, arrows to move, Enter to select,
Esc/Ctrl+C to cancel. In the inline command picker, Tab completes the
highlighted command into the input line.
Your own pickers
Section titled “Your own pickers”rune.ui.picker.show gives scripts the same overlay:
rune.ui.picker.show({ title = "Where to?", items = { { text = "temple", desc = "the safe room", value = "temple" }, { text = "smithy", desc = "repairs", value = "smithy" }, { text = "harbor", desc = "boats east", value = "harbor" }, }, on_select = function(value) rune.send("walkto " .. value) end,})on_select receives the selected item’s value, which defaults to its
text. Items can also be plain strings. Pass mode = "inline" for a
compact picker attached to the input line instead of a modal (the title
only shows in modal mode), and match_description = true to fuzzy-match
descriptions too.
Bind it to a key and you have a custom menu:
rune.bind("f3", function() rune.ui.picker.show({ title = "Paths", items = path_names, on_select = go })end)Related: rune.ui.picker reference, Input & History for tab completion and history navigation, Key Bindings