[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Emacs-diffs] /srv/bzr/emacs/trunk r100961: Enable ICANON (Bug#6771)
From: |
Stefan Monnier |
Subject: |
Re: [Emacs-diffs] /srv/bzr/emacs/trunk r100961: Enable ICANON (Bug#6771). Any long line problem must be solved differently. |
Date: |
Wed, 04 Aug 2010 17:56:27 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) |
I agree with the commit that reverts my ICANON change. Yet:
> There is AFAIK no bug report or test case for the long line problem.
AFAIK, the missing bug-report is the one that shows the ills of sending
EOFs, while the bug-report for long-lines is bug#6149, which should be
re-opened.
> + /* There is no more "send eof to flush" going on (which is wrong and
> + unportable in itself), and disabling ICANON breaks a lot of stuff
> + and shows literal ^D in many cases. The correct way to handle too
> + much output is to buffer what could not be written and then write it
> + again when select returns ok for writing.
Could you spell out more precisely how it's different from what we do
now: we already check emacs_write's output to see if the buffer is full,
in which case we wait, don't we?
> + s.main.c_lflag |= ICANON; /* Enable line editing and eof processing */
> + s.main.c_cc[VEOF] = 'D'&037; /* Control-D */
> s.main.c_cc[VMIN] = 1;
> s.main.c_cc[VTIME] = 0;
IIUC VMIN and VTIME not only are specific to the non-ICANON mode, but
also they use the same slot as some of the other settings (specifically
the slots may be shared with VEOL and VEOF, according to my manpage).
Stefan
- Re: [Emacs-diffs] /srv/bzr/emacs/trunk r100961: Enable ICANON (Bug#6771). Any long line problem must be solved differently.,
Stefan Monnier <=