"Sergey E. Koposov" <math@sai.msu.ru> writes:
> But concerning to your zero byte change, it currently just broke
> everything (as I thought, and that's why I didn't implemented it). The
> problem with using zero byte is that it breaks all the readline functions
> read_history and write_history. Those functions deal with usual C
> strings, so putting zero byte inside them will just truncate everything.
> (that's exactly what occur with the psql from CVS).
If CVS tip is actually broken, we'd better revert this patch and
rethink the approach.
> So, I don't know. There are two alternatives. One is to use 0x01 byte
> instead: (at least I don't really agree with Tom's comments about possible
> problems with using 0x01 with some exotic encodings)
Just because you don't use far eastern encodings doesn't mean there's
not a large contingent who do.
I don't understand why any of these shenanigans are needed. If \e is
able to stick a multiline entry into the history, why can't the other
code do it?
regards, tom lane