Hello. I don't know whether this is a bug fix or improvement,
anyway show you a patch for psql completion.
psql completes identifiers in many places but donesn't for
multibyte identifiers.
=> ALTER TABLE "[tab]
"いろは" "with space"
=> ALTER TABLE "い[tab]
<none>
Currently psql counts the length of the string to complete in
bytes but it is desirable to count in client encoding. The
attached patch does so and the uncompleted completion would
be completed.
=> ALTER TABLE "い[tab]
=> ALTER TABLE "いろは" _
During the investigation into this issue, I found a mistake in
the comment for PQmblen. It give the byte length of the character
at the point, not word. The attached patche also fixes it.
> /*
> * returns the byte length of the word beginning s, using the
> * specified encoding.
> */
> int
> PQmblen(const char *s, int encoding)
What do you think about this?
regards,
--
Kyotaro Horiguchi
NTT Open Source Software Center