-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
> Agreed it would be nice to more clearly distingush user functions from
> system ones, but how? I can't see how 'S' is going to help us because
> \dS already shows system tables. Would it be \dfS? What is the logic
> to that? Having 'S' be a flag and a command is too confusing.
Um...it is already there, in the form of \dtS and \diS. This would merely
elevate some of the lesser-used system objects (e.g. operators, domains)
to the same status as the more common ones (e.g. tables, sequences).
> And what about \dn. Seems showing system schemas vs ordinary schemas
> would make sense too. I wonder if just telling to people focus on the
> schema name is the best bet.
Yes, they fall in to my "no differentiation" pile and would not get a
'S' modifier. Simliarly with casts, tablespaces, users, etc.
> Another idea is to add a flag to skip system stuff like '-', so \df-
> doesn't show system stuff. Same for the others. That does make sense
> to me. I know it isn't logical for \d but \d is for storage, while the
> others are different in that system tables aren't normally accessed by
> users, while system functions/schemas are.
The minus flag seems a little ugly to me, when we already have an
established way of differentiating between the two. Sure, people *access*
system functions, but having to look at them through \df seems to be
a fairly rare event, I would think. Far more likely they would want to
view their own functions.
To clarify the 'S' a bit more, here is the output from \? in my new patch:
Informational (S = show system objects)
\l list all databases (add "+" for more detail)
\d[S] list tables, views, and sequences
\d[S] NAME describe table, view, sequence, or index
\dt[S] [PATTERN] list tables (add "+" for more detail)
\dv[S] [PATTERN] list views (add "+" for more detail)
\ds[S] [PATTERN] list sequences (add "+" for more detail)
\di[S] [PATTERN] list indexes (add "+" for more detail)
\df[S] [PATTERN] list functions (add "+" for more detail)
\dD[S] [PATTERN] list domains
\do[S] [NAME] list operators
\da[S] [PATTERN] list aggregate functions
\dT[S] [PATTERN] list data types (add "+" for more detail)
\dc[S] [PATTERN] list conversions
\db [PATTERN] list tablespaces (add "+" for more detail)
\dC list casts
\dd [PATTERN] list objects with comments
\dg [PATTERN] list groups
\dl list large objects, same as \lo_list
\dn [PATTERN] list schemas (add "+" for more detail)
\dp [PATTERN] list table, view and sequence access privileges
\du [PATTERN] list users
Note that the confusing "t|i|v|s|S" thing has been broken up, and
the "S" objects are grouped together.
- --
Greg Sabino Mullane greg(at)turnstep(dot)com
PGP Key: 0x14964AC8 200409090737
-----BEGIN PGP SIGNATURE-----
iD8DBQFBQECGvJuQZxSWSsgRAgG5AJ9EYY1+s42wBsrF+Q2g1Jpu2F+M2wCgvkB0
/prkBWW1Z7Mqc2KRtDyf0vo=
=8muz
-----END PGP SIGNATURE-----