Tab completion: offer common SQL function names in expression positions #15
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
At
select(and any othersql_expr_identslot — WHERE, projections, HAVING, etc.) Tab cycles through schema columns plus a handful of expression keywords (null,distinct,not,true,false,exists,case, …). It does not offer common SQL function names.After the function-call validator fix landed, the user can type
sum/avg/etc. without false flagging, but they have to know the function names already. Pedagogically this is the next step: surface them as candidates so the user can discover them.Scope to settle
CandidateKind::Functioncould give them a distinct colour in the panel (same machinery the keyword/identifier kinds already use).sql_expr_identpositions (the walker tags this via the expected set already used incandidates_at_cursor_in_mode).Related
Resolved by ADR-0022 Amendment 6 (commit
6d8c9ee): a curated KNOWN_SQL_FUNCTIONS list (src/dsl/sql_functions.rs) offers common SQL function names as Tab candidates (CandidateKind::Function, new tok_function colour) at expression positions. See docs/handoff/20260602-handoff-53.md.