[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debbugs-tracker] bug#19746: closed (25.0.50; Emacs should treat synthet

From: GNU bug Tracking System
Subject: [debbugs-tracker] bug#19746: closed (25.0.50; Emacs should treat synthetic up-events gracefully)
Date: Fri, 14 Aug 2015 15:04:02 +0000

Your message dated Fri, 14 Aug 2015 17:03:23 +0200
with message-id <address@hidden>
and subject line 
has caused the debbugs.gnu.org bug report #19746,
regarding 25.0.50; Emacs should treat synthetic up-events gracefully
to be marked as done.

(If you believe you have received this mail in error, please contact

19746: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=19746
GNU Bug Tracking System
Contact address@hidden with problems
--- Begin Message --- Subject: 25.0.50; Emacs should treat synthetic up-events gracefully Date: Mon, 02 Feb 2015 20:15:12 +0100
Emacs' mouse event code deals with the up- modifier (bit 0 in the
modifier mask) by converting it to click- or drag-events.  This happens
at the C level.

However, when synthesizing events for things like Midi keyboards
(basically computerized music instruments), it makes sense _not_ to
convert an up-key event to either a drag or click event since usually
the down-event is a principal event of its own: basically the
"importance relation" of down- and up-events is reversed for those kinds
of keys as compared to mouse buttons and this reflects in what kind of
event one would want representing it.

This patch allows the keymap machinery to treat the up- modifier in a
manner analog to the down-modifier even though Emacs will not (yet)
natively generate up-events itself.  However, it will allow sensible
behavior for such events being pushed into unread-command-events.

It has been proposed on the Emacs developer list on
and had some comments amended at
However, there was an additional request at
to change one comment in read_key_sequence to actions not matching the
code in read_key_sequence but rather happening in make_lispy_event.

The explanation why this change would be inappropriate in
was after an additional exchange "resolved" with an ad hominem attack in

Further private communication led to no results.  In order to at least
provide users in need of this functionality with a referenceable issue
report (and possibly get someone else to apply the patch), I am
submitting the patch against current master here.

Attachment: 0001-Let-input-queue-deal-gracefully-with-up-events.patch
Description: Text Data

In GNU Emacs (i686-pc-linux-gnu, GTK+ Version 3.12.2)
 of 2014-12-19 on lola
Repository revision: c683666bcd0f0675ba72894a4a6374cf15849385
Windowing system distributor `The X.Org Foundation', version 11.0.11600000
System Description:     Ubuntu 14.10

Configured using:
 `configure --without-toolkit-scroll-bars'

Configured features:

Important settings:
  value of $LC_MONETARY: en_US.UTF-8
  value of $LC_NUMERIC: en_US.UTF-8
  value of $LC_TIME: en_US.UTF-8
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix

Major mode: Fundamental

Minor modes in effect:
  shell-dirtrack-mode: t
  TeX-PDF-mode: t
  diff-auto-refine-mode: t
  desktop-save-mode: t
  minibuffer-electric-default-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t

Recent messages:
No more unread articles
Making completion list...
Found `patches, sending' in Concept Index.  (Only match)
Are you sure you want to quit reading news? (y or n) y
(No changes need to be saved)
Saving /home/dak/.newsrc.eld...
Saving file /home/dak/.newsrc.eld...
Wrote /home/dak/.newsrc.eld
Saving /home/dak/.newsrc.eld...done

Load-path shadows:
None found.

(shadow emacsbug sgml-mode nndoc tramp-cache tramp-sh tramp tramp-compat
tramp-loaddefs trampver shell pcomplete gnus-dup help-mode debug
thingatpt pp rfc2368 sendmail nnir flow-fill shr dom subr-x pcase
browse-url mm-archive mule-util sort smiley gnus-cite mail-extr
gnus-async gnus-bcklg gnus-kill qp gnus-ml disp-table pop3 nndir nndraft
nnmh gnutls network-stream nsm auth-source cl-macs gv eieio eieio-core
starttls nnml nnfolder nnnil gnus-agent gnus-srvr gnus-score score-mode
nnvirtual gnus-msg gnus-art mm-uu mml2015 mm-view mml-smime smime
password-cache dig mailcap nntp gnus-cache gnus-sum gnus-group gnus-undo
gnus-start gnus-cloud nnimap nnmail mail-source tls utf7 netrc nnoo
parse-time gnus-spec gnus-int gnus-range message format-spec rfc822 mml
mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045
ietf-drums mailabbrev gmm-utils mailheader gnus-win sh-script smie
executable make-mode smerge-mode scheme latexenc nxml-uchnm rng-xsd
xsd-regexp rng-cmpct rng-nxml rng-valid rng-loc rng-uri rng-parse
nxml-parse rng-match rng-dt rng-util rng-pttrn nxml-ns nxml-mode
nxml-outln nxml-rap nxml-util nxml-glyph nxml-enc xmltok dired-x dired
python json tex-info texinfo autorevert filenotify cc-mode cc-fonts
cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs
lilypond-mode compile comint ansi-color ring bug-reference add-log
preview prv-emacs reftex-dcr reftex-auc reftex reftex-vars tex-bar
tex-buf toolbar-x noutline outline font-latex byte-opt bytecomp
byte-compile cl-extra cconv latex edmacro kmacro tex-style tex dbus xml
crm vc-git diff-mode easy-mmode jka-compr info easymenu package
epg-config advice desktop frameset minibuf-eldef gnus gnus-ems nnheader
gnus-util mail-utils mm-util help-fns mail-prsvr wid-edit cl-loaddefs
cl-lib cus-start cus-load preview-latex tex-site auto-loads server
time-date tooltip eldoc electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt
fringe tabulated-list newcomment elisp-mode lisp-mode prog-mode register
page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock
font-lock syntax facemenu font-core frame cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew
greek romanian slovak czech european ethiopic indian cyrillic chinese
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer nadvice
loaddefs button faces cus-face macroexp files text-properties overlay
sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote make-network-process dbusbind
gfilenotify dynamic-setting system-font-setting font-render-setting
move-toolbar gtk x-toolkit x multi-tty emacs)

Memory information:
((conses 8 739868 45106)
 (symbols 24 52766 375)
 (miscs 20 1596 1711)
 (strings 16 120678 18300)
 (string-bytes 1 3817797)
 (vectors 8 47334)
 (vector-slots 4 1796732 49030)
 (floats 8 385 606)
 (intervals 28 63060 1020)
 (buffers 520 276)
 (heap 1024 63553 15724))

David Kastrup

--- End Message ---
--- Begin Message --- Subject: Date: Fri, 14 Aug 2015 17:03:23 +0200
David Kastrup

--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]