On Wed, Sep 2, 2015 at 10:14 AM, Michael Paquier <michael.paquier@gmail.com> wrote: > On Tue, Sep 1, 2015 at 10:15 PM, Thomas Munro wrote: >> Here is a version that splits that monster up into three small smaller >> blocks, and makes sure that GRANT goes with TO and REVOKE goes with FROM >> before completing with roles. >> >> Unfortunately your first example "GRANT ... FROM <tab>" still gets >> inappropriate completion because of the general FROM-matching branch with >> comment /* ... FROM ... */ that comes near the end, but it didn't seem >> sensible to start teaching the general FROM branch about avoiding this >> specific invalid production when it's happy to complete "BANANA FROM <tab>". > > OK, let's live with that, tab completion would just have an incorrect > suggestion only once "from" is written completely with a space added > after it. Your patch improves many areas anyway, and that's just a > small point, hence let's have a committer look at it.
"GRANT xxx ON FOREIGN DATA WRAPPER yyy <tab>" should suggest "TO"? "GRANT xxx ON FOREIGN DATA WRAPPER yyy TO <tab>" should suggest the roles? "GRANT xxx ON FOREIGN SERVER <tab>" should suggest foreign servers? "GRANT xxx ON FOREIGN SERVER yyy <tab>" should suggest "TO"? "GRANT xxx ON FOREIGN SERVER yyy TO <tab>" should suggest the roles?
Thanks. New version attached that handles these to.
Also fixed "GRANT * ON FOREIGN DATA <tab>" which now suggests "WRAPPER".