From: Duncan Burke <duncankburke@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 22743@debbugs.gnu.org
Subject: bug#22743: 25.0.91: set-quit-char does not work if emacs lacks a controlling tty
Date: Sat, 20 Feb 2016 22:37:56 +1100 [thread overview]
Message-ID: <56C85014.4010002@gmail.com> (raw)
In-Reply-To: <83mvqvpvnm.fsf@gnu.org>
On 20/02/16 20:40, Eli Zaretskii wrote:
> I don't think this patch will work reliably, because the parts of code
> you changed are not the whole picture. C-g is supported implicitly
> and explicitly in many more places. Grep the Lisp sources for C-g to
> see that.
I think it should be possible to rebind C-g. If it cannot be rebound, then
that is an exceptional wart which significantly compromises emacs'
configurability.
It is extremely common for lisp code, whether in emacs or an external
package,
to make assumptions about default bindings. C-g is far from unique in this
respect and while it would be nice if emacs had a way of globally changing
these assumptions, this is an understood cost when one deviates
significantly
from emacs defaults. I accept that changing something fundamental like this
requires scouring through lisp source and finding all the places this
assumption is made. Anything in lisp can be patched or configured at
runtime,
so I am not particularly concerned about such issues.
This patch is required because in this specific instance an assumption
is made
in the C code about the user's intended purpose of C-g, which has an
effect in
a graphical frame (demonstrated by my example), but that cannot be
configured
through lisp from a graphical frame.
> That's documented in the doc string of set-quit-char, so this is by
> design. On a TTY, C-g triggers a signal, and Emacs uses a system API
> to change the character which does that. But on GUI frames, this is
> not possible.
If this is the intended behaviour of set-quit-char, then how is one supposed
to set quit_char from a graphical frame? quit_char is demonstrably not
TTY-specific, so it should be configurable and I cannot see a better place
than set-quit-char.
> FWIW, my NSHO is that we should deprecate set-quit-char and remove it
> in a future Emacs version. It is no longer reasonable to have a
> feature that only works on text terminals.
Do you mean that quit_char should be removed entirely from the C code?
Perhaps
that would be best, I do not know enough to have an informed
optinion. However, as long as quit_char exists I have a demonstrated need to
be able to configure it at runtime.
next prev parent reply other threads:[~2016-02-20 11:37 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-20 5:31 bug#22743: 25.0.91: set-quit-char does not work if emacs lacks a controlling tty Duncan Burke
2016-02-20 8:04 ` John Wiegley
2016-02-20 11:48 ` Duncan Burke
2016-02-20 9:40 ` Eli Zaretskii
2016-02-20 11:37 ` Duncan Burke [this message]
2016-02-20 20:36 ` Glenn Morris
2016-02-20 20:44 ` Eli Zaretskii
2016-02-20 20:49 ` Glenn Morris
2016-02-20 21:04 ` Eli Zaretskii
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56C85014.4010002@gmail.com \
--to=duncankburke@gmail.com \
--cc=22743@debbugs.gnu.org \
--cc=eliz@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).