* bug#42915: 27.1; Setting ns-function-modifier to control breaks control for certain keys @ 2020-08-18 14:22 Ryan C. Thompson 2020-08-18 22:50 ` Alan Third 0 siblings, 1 reply; 7+ messages in thread From: Ryan C. Thompson @ 2020-08-18 14:22 UTC (permalink / raw) To: 42915 On a mac, run: emacs -Q --eval "(setq ns-function-modifier 'control)" Then try C-right, C-home, and similar key combinations. Emacs will act as if control is not being held down, i.e. C-right will run right-char instead of right-word. Indeed, C-h k C-right shows the key binding for right, not C-right. However, other key combinations, such as C-f, work as expected. As far as I can tell, this only started happening after I updated to Emacs 27. I was previously using this config with Emacs 26.3 and never saw this issue. So I believe this is a new bug in Emacs 27. In GNU Emacs 27.1 (build 1, x86_64-apple-darwin18.7.0, NS appkit-1671.60 Version 10.14.6 (Build 18G6020)) of 2020-08-13 built on urania.local Windowing system distributor 'Apple', version 10.3.1671 System Description: Mac OS X 10.14.6 Recent messages: Creating customization items ...done Creating customization setup...done custom.el has auto save data; consider M-x recover-this-file Saving file /Users/ryan/.emacs.d/custom.el... Undo history discarded by undo-tree (see ‘undo-tree-limit’) Wrote /Users/ryan/.emacs.d/persistence/undo-tree/.!Users!ryan!.emacs.d!custom.el.~undo-tree~ Wrote /Users/ryan/.emacs.d/custom.el Wrote and git-wip’d /Users/ryan/.emacs.d/custom.el Wrote /Users/ryan/.emacs.d/persistence/undo-tree/.!Users!ryan!.emacs.d!custom.el.~undo-tree~ Killed inactive buffer: *Help*. Buffer is read-only: #<buffer magit: .emacs.d> Configured using: 'configure --disable-dependency-tracking --disable-silent-rules --enable-locallisppath=/usr/local/share/emacs/site-lisp --infodir=/usr/local/Cellar/emacs-plus@27/27.1/share/info/emacs --prefix=/usr/local/Cellar/emacs-plus@27/27.1 --with-xml2 --with-gnutls --without-dbus --with-imagemagick --with-modules --with-rsvg --with-ns --disable-ns-self-contained' Configured features: RSVG IMAGEMAGICK GLIB NOTIFY KQUEUE ACL GNUTLS LIBXML2 TOOLKIT_SCROLL_BARS NS MODULES THREADS PDUMPER LCMS2 GMP Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Magit Minor modes in effect: recentf-mode: t magit-filenotify-mode: t global-magit-file-mode: t magit-auto-revert-mode: t global-git-commit-mode: t async-bytecomp-package-mode: t winner-mode: t which-key-mode: t which-function-mode: t savehist-mode: t save-place-mode: t minibuffer-depth-indicate-mode: t midnight-mode: t global-hl-line-mode: t desktop-save-mode: t delete-selection-mode: t ws-butler-global-mode: t ws-butler-mode: t volatile-highlights-mode: t global-undo-tree-mode: t undo-tree-mode: t sml-modeline-mode: t selectrum-prescient-mode: t prescient-persist-mode: t global-pointback-mode: t pointback-mode: t mode-line-bell-mode: t mac-pseudo-daemon-mode: t imagex-auto-adjust-mode: t ido-yes-or-no-mode: t ido-ubiquitous-mode: t minibuffer-electric-default-mode: t ido-everywhere: t ido-complete-space-or-hyphen-mode: t highlight-stages-global-mode: t highlight-stages-mode: t global-git-gutter-mode: t shell-dirtrack-mode: t editorconfig-mode: t beacon-mode: t bar-cursor-mode: t autopair-global-mode: t show-paren-mode: t auto-dim-other-buffers-mode: t global-auto-complete-mode: t global-anzu-mode: t anzu-mode: t amx-mode: t override-global-mode: t straight-use-package-mode: t straight-package-neutering-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 buffer-read-only: t line-number-mode: t transient-mark-mode: t Load-path shadows: /Users/ryan/.emacs.d/straight/build/flycheck-elsa/Elsafile hides /Users/ryan/.emacs.d/straight/build/elsa/Elsafile /Users/ryan/.emacs.d/straight/build/async/dired-async hides /Users/ryan/.emacs.d/elpa/async-20200113.1745/dired-async /Users/ryan/.emacs.d/straight/build/async/smtpmail-async hides /Users/ryan/.emacs.d/elpa/async-20200113.1745/smtpmail-async /Users/ryan/.emacs.d/straight/build/async/async hides /Users/ryan/.emacs.d/elpa/async-20200113.1745/async /Users/ryan/.emacs.d/straight/build/async/async-bytecomp hides /Users/ryan/.emacs.d/elpa/async-20200113.1745/async-bytecomp /Users/ryan/.emacs.d/straight/build/async/async-autoloads hides /Users/ryan/.emacs.d/elpa/async-20200113.1745/async-autoloads /Users/ryan/.emacs.d/straight/build/async/async-pkg hides /Users/ryan/.emacs.d/elpa/async-20200113.1745/async-pkg /Users/ryan/.emacs.d/straight/build/popup/popup hides /Users/ryan/.emacs.d/elpa/popup-20160709.1429/popup /Users/ryan/.emacs.d/straight/build/popup/popup-autoloads hides /Users/ryan/.emacs.d/elpa/popup-20160709.1429/popup-autoloads /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-stan hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-stan /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-exp hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-exp /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-J hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-J /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-emacs-lisp hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-emacs-lisp /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-css hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-css /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-lob hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-lob /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ol-irc hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ol-irc /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-forth hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-forth /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-macs hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-macs /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-scheme hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-scheme /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ox hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ox /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-abc hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-abc /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-C hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-C /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-capture hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-capture /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-ref hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-ref /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-clojure hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-clojure /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-mouse hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-mouse /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-ledger hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-ledger /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-ctags hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-ctags /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-entities hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-entities /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-archive hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-archive /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-screen hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-screen /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ol-bibtex hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ol-bibtex /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-haskell hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-haskell /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-asymptote hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-asymptote /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-table hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-table /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ol-eww hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ol-eww /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ox-org hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ox-org /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-num hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-num /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-plot hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-plot /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ol-rmail hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ol-rmail /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-awk hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-awk /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-groovy hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-groovy /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-octave hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-octave /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-faces hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-faces /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-colview hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-colview /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-R hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-R /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-timer hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-timer /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-ebnf hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-ebnf /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-mobile hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-mobile /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-fortran hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-fortran /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-shell hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-shell /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-perl hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-perl /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-sqlite hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-sqlite /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-sed hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-sed /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-list hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-list /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-ruby hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-ruby /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-eval hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-eval /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-habit hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-habit /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-clock hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-clock /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-goto hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-goto /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ox-html hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ox-html /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-src hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-src /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-lisp hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-lisp /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ol-eshell hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ol-eshell /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-ditaa hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-ditaa /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-pcomplete hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-pcomplete /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-lint hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-lint /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ox-latex hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ox-latex /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-sass hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-sass /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-io hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-io /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-tangle hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-tangle /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-calc hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-calc /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-java hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-java /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ox-icalendar hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ox-icalendar /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ol-mhe hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ol-mhe /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-attach-git hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-attach-git /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ox-md hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ox-md /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ox-beamer hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ox-beamer /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-element hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-element /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-protocol hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-protocol /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-mscgen hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-mscgen /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-gnuplot hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-gnuplot /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-tempo hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-tempo /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-latex hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-latex /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ol-w3m hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ol-w3m /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-id hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-id /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-vala hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-vala /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ox-man hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ox-man /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-feed hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-feed /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-lua hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-lua /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-table hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-table /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-ocaml hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-ocaml /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-coq hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-coq /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ol-gnus hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ol-gnus /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-picolisp hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-picolisp /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-indent hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-indent /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-lilypond hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-lilypond /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-matlab hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-matlab /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-datetree hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-datetree /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ol-docview hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ol-docview /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-python hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-python /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-makefile hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-makefile /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-duration hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-duration /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-agenda hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-agenda /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-dot hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-dot /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-js hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-js /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ox-publish hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ox-publish /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-inlinetask hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-inlinetask /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-org hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-org /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-keys hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-keys /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-core hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-core /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-compat hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-compat /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ol hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ol /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ox-odt hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ox-odt /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ol-info hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ol-info /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-plantuml hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-plantuml /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-eshell hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-eshell /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ox-ascii hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ox-ascii /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-loaddefs hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-loaddefs /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-hledger hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-hledger /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-maxima hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-maxima /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ol-bbdb hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ol-bbdb /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-macro hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-macro /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-sql hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-sql /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-attach hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-attach /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-processing hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-processing /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ox-texinfo hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ox-texinfo /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-crypt hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-crypt /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-footnote hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-footnote /Users/ryan/.emacs.d/straight/build/org-plus-contrib/org-install hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/org-install /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-comint hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-comint /Users/ryan/.emacs.d/straight/build/org-plus-contrib/ob-shen hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/org/ob-shen /Users/ryan/.emacs.d/straight/build/let-alist/let-alist hides /usr/local/Cellar/emacs-plus@27/27.1/share/emacs/27.1/lisp/emacs-lisp/let-alist Features: (shadow sort mail-extr two-column cl-print crux bug-reference recentf tree-widget eieio-opt speedbar sb-image ezimage dframe help-fns radix-tree magit-extras magit-filenotify magit-filenotify-autoloads magit-bookmark magit-submodule magit-obsolete magit-popup magit-blame magit-stash magit-reflog magit-bisect magit-push magit-pull magit-fetch magit-clone magit-remote magit-commit magit-sequence magit-notes magit-worktree magit-tag magit-merge magit-branch magit-reset magit-files magit-refs magit-status magit magit-repos magit-apply magit-wip magit-log magit-diff smerge-mode magit-core magit-autorevert magit-margin magit-transient magit-process magit-mode git-commit transient magit-git magit-section magit-utils log-edit pcvs-util with-editor async-bytecomp sh-script smie executable flymake-proc flymake adjust-parens autorevert filenotify vc-git diff-mode org-eldoc ol-eww eww mm-url url-queue ol-rmail ol-mhe ol-irc ol-info ol-gnus nnir gnus-sum url url-proxy url-privacy url-expand url-methods url-history mailcap shr url-cookie url-domsuf url-util svg xml dom gnus-group gnus-undo gnus-start gnus-cloud nnimap nnmail mail-source utf7 netrc nnoo gnus-spec gnus-int gnus-range gnus-win ol-docview doc-view jka-compr image-mode exif ol-bibtex bibtex ol-bbdb ol-w3m editorconfig-core editorconfig-core-handle editorconfig-fnmatch server emacsbug message rmc puny rfc822 mml mml-sec epa epg epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail face-remap winner which-key which-func savehist saveplace mb-depth midnight icomplete hl-line desktop frameset delsel flycheck-elsa flycheck-elsa-autoloads flycheck flycheck-autoloads pkg-info-autoloads ws-butler ws-butler-autoloads with-simulated-input with-simulated-input-autoloads which-key-autoloads volatile-highlights volatile-highlights-autoloads undo-tree diff undo-tree-autoloads tempbuf tempbuf-autoloads system-specific-settings system-specific-settings-autoloads snakemake-mode python tramp-sh snakemake-mode-autoloads magit-popup-autoloads smooth-scrolling smooth-scrolling-autoloads sml-modeline sml-modeline-autoloads slime compile etags fileloop xref project arc-mode archive-mode hyperspec slime-autoloads macrostep-autoloads shrink-whitespace-autoloads selectrum-prescient prescient selectrum-prescient-autoloads prescient-autoloads selectrum crm selectrum-autoloads reveal-in-osx-finder dired dired-loaddefs reveal-in-osx-finder-autoloads rainbow-delimiters rainbow-delimiters-autoloads pretty-symbols pretty-symbols-autoloads poly-R-autoloads poly-noweb-autoloads poly-markdown-autoloads polymode derived poly-lock polymode-base polymode-weave polymode-export polymode-compat polymode-methods polymode-core polymode-classes eieio-custom eieio-base color polymode-autoloads pointback assoc pointback-autoloads paradox paradox-menu paradox-commit-list hydra lv paradox-execute paradox-github paradox-core spinner paradox-autoloads hydra-autoloads lv-autoloads spinner-autoloads package-lint let-alist finder package-lint-autoloads let-alist-autoloads org-bullets org-bullets-autoloads ox-extra ox-odt rng-loc rng-uri rng-parse rng-match rng-dt rng-util rng-pttrn nxml-parse nxml-ns nxml-enc xmltok nxml-util ox-latex ox-icalendar ox-html table ox-ascii ox-publish ox org-element avl-tree generator gnus nnheader gnus-util rmail rmail-loaddefs rfc2047 rfc2045 ietf-drums mail-utils mm-util mail-prsvr occur-context-resize occur-context-resize-autoloads noflet cl-indent noflet-autoloads mode-line-bell mode-line-bell-autoloads edit-indirect-autoloads markdown-mode-autoloads magit-autoloads git-commit-autoloads with-editor-autoloads transient-autoloads mac-pseudo-daemon mac-pseudo-daemon-autoloads lexbind-mode lexbind-mode-autoloads json-mode json-reformat json-snatcher js imenu cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs json-mode-autoloads json-snatcher-autoloads json-reformat-autoloads iqa bookmark text-property-search iqa-autoloads image+ image-file image+-autoloads ido-yes-or-no ido-yes-or-no-autoloads ido-completing-read+ memoize minibuf-eldef ido ido-completing-read+-autoloads memoize-autoloads ido-complete-space-or-hyphen ido-complete-space-or-hyphen-autoloads htmlize cl htmlize-autoloads highlight-stages highlight-stages-autoloads highlight-defined highlight-defined-autoloads header2 header2-autoloads git-wip-mode vc vc-dispatcher git-wip-mode-autoloads git-gutter-fringe fringe-helper git-gutter-fringe-autoloads fringe-helper-autoloads git-gutter git-gutter-autoloads filelock filelock-autoloads esup-autoloads cus-edit cus-start cus-load wid-edit ess ess-utils ess-custom tramp tramp-loaddefs trampver tramp-integration files-x tramp-compat shell parse-time iso8601 ls-lisp ess-autoloads elsa elsa-typed-subr elsa-typed-thingatpt elsa-typed-syntax elsa-extension-builtin elsa-ruleset elsa-rules-list elsa-analyser elsa-typed-builtin elsa-english elsa-check elsa-state elsa-scope elsa-reader elsa-type-helpers elsa-error pcase elsa-variable trinary elsa-types elsa-autoloads trinary-autoloads editorconfig editorconfig-autoloads readme-debian readme-debian-autoloads debian-copyright debian-copyright-autoloads debian-control-mode debian-control-mode-autoloads debian-changelog-mode add-log debian-changelog-mode-autoloads diminish diminish-autoloads decide decide-autoloads cwl-mode yaml-mode cwl-mode-autoloads yaml-mode-autoloads crux-autoloads creole-mode-autoloads cl-lib-highlight cl-lib-highlight-autoloads cask-mode cask-mode-autoloads cask cask-bootstrap ansi package-recipe-mode package-build-badges package-build package-recipe eieio-compat lisp-mnt shut-up epl git commander cask-autoloads ansi-autoloads package-build-autoloads shut-up-autoloads epl-autoloads buttercup warnings ert pp ewoc debug backtrace buttercup-compat buttercup-autoloads beacon beacon-autoloads bar-cursor bar-cursor-autoloads autopair paren autopair-autoloads auto-dim-other-buffers auto-dim-other-buffers-autoloads auto-complete edmacro kmacro popup auto-complete-autoloads popup-autoloads finder-inf async async-autoloads apt-sources-list apt-sources-list-autoloads apache-mode-autoloads anzu thingatpt anzu-autoloads amx amx-autoloads adjust-parens-autoloads exec-path-from-shell exec-path-from-shell-autoloads f s f-autoloads s-autoloads req-package view req-package-cycles req-package-args req-package-hooks ht log4e rx dash use-package use-package-ensure use-package-delight use-package-diminish use-package-bind-key bind-key use-package-core req-package-autoloads ht-autoloads log4e-autoloads dash-autoloads use-package-autoloads bind-key-autoloads org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-footnote org-src ob-comint org-pcomplete pcomplete comint ansi-color ring org-list org-faces org-entities time-date noutline outline easy-mmode ob-emacs-lisp ob-core ob-eval org-table ol org-keys org-compat advice org-macs org-loaddefs format-spec find-func cal-menu calendar cal-loaddefs org-plus-contrib-autoloads org-version straight-autoloads info cl-extra help-mode straight package easymenu browse-url url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs eieio-loaddefs password-cache json subr-x map url-vars seq byte-opt gv bytecomp byte-compile cconv cl-loaddefs cl-lib tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/ns-win ns-win ucs-normalize mule-util term/common-win tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode elisp-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core term/tty-colors frame minibuffer cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite charscript charprop case-table epa-hook jka-cmpr-hook help simple abbrev obarray cl-preloaded 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 threads kqueue cocoa ns lcms2 multi-tty make-network-process emacs) Memory information: ((conses 16 1276146 134482) (symbols 48 71130 1) (strings 32 483771 10927) (string-bytes 1 8171722) (vectors 16 93966) (vector-slots 8 1976986 140480) (floats 8 563 1404) (intervals 56 21831 6106) (buffers 1000 42)) ^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#42915: 27.1; Setting ns-function-modifier to control breaks control for certain keys 2020-08-18 14:22 bug#42915: 27.1; Setting ns-function-modifier to control breaks control for certain keys Ryan C. Thompson @ 2020-08-18 22:50 ` Alan Third 2021-06-12 12:49 ` Lars Ingebrigtsen 0 siblings, 1 reply; 7+ messages in thread From: Alan Third @ 2020-08-18 22:50 UTC (permalink / raw) To: Ryan C. Thompson; +Cc: 42915 [-- Attachment #1: Type: text/plain, Size: 974 bytes --] On Tue, Aug 18, 2020 at 10:22:18AM -0400, Ryan C. Thompson wrote: > On a mac, run: > > emacs -Q --eval "(setq ns-function-modifier 'control)" > > Then try C-right, C-home, and similar key combinations. Emacs will act as if > control is not being held down, i.e. C-right will run right-char instead of > right-word. Indeed, C-h k C-right shows the key binding for right, not > C-right. However, other key combinations, such as C-f, work as expected. > > As far as I can tell, this only started happening after I updated to Emacs > 27. I was previously using this config with Emacs 26.3 and never saw this > issue. So I believe this is a new bug in Emacs 27. Can you please try the attached patch? Note that there may be some change to how "function" keys, like return and the arrow keys, are handled when using the fn key. I can't remember exactly how they worked with Emacs 26, but I believe the new behaviour should be more consistent across the board. -- Alan Third [-- Attachment #2: 0001-Handle-fn-functions-keys-better-on-NS-bug-42915.patch --] [-- Type: text/plain, Size: 3824 bytes --] From 6460cec4412a0f8bc5a16b91743423bef6c09e14 Mon Sep 17 00:00:00 2001 From: Alan Third <alan@idiocy.org> Date: Tue, 18 Aug 2020 23:41:08 +0100 Subject: [PATCH] Handle fn + functions keys better on NS (bug#42915) * doc/emacs/macos.texi (Mac / GNUstep Customization): Document the caveat regarding fn and function keys. * src/nsterm.m (EV_MODIFIERS2): Ignore ns_function_modifier if this is a function key. ([EmacsView keyDown:]): Get rid of the code that unsets the ns_function_modifier value in modifiers. --- doc/emacs/macos.texi | 4 ++++ src/nsterm.m | 23 ++++++++++------------- 2 files changed, 14 insertions(+), 13 deletions(-) diff --git a/doc/emacs/macos.texi b/doc/emacs/macos.texi index 00daa8b35d..3fb625b417 100644 --- a/doc/emacs/macos.texi +++ b/doc/emacs/macos.texi @@ -143,6 +143,10 @@ Mac / GNUstep Customization may also be set to @code{left}, which means to use the same behavior as the corresponding left-hand key. +Emacs is unable to detect when the @key{function} key is being used as +a modifier with function keys. As a result Emacs will ignore the +modifier set in @code{ns-function-modifier} with these keys. + @subsection Frame Variables @table @code diff --git a/src/nsterm.m b/src/nsterm.m index 98c5b69d68..1c306c1b8e 100644 --- a/src/nsterm.m +++ b/src/nsterm.m @@ -402,7 +402,7 @@ - (NSColor *)colorUsingDefaultColorSpace hyper_modifier : 0) \ | ((flags & NSEventModifierFlagShift) ? \ shift_modifier : 0) \ - | ((flags & NS_FUNCTION_KEY_MASK) \ + | (((flags & NS_FUNCTION_KEY_MASK) && kind == QCordinary) \ ? parse_solitary_modifier (mod_of_kind (ns_function_modifier, \ kind)) \ : 0) \ @@ -6505,25 +6505,22 @@ untranslated characters (returned by the we have both shift-like and control-like modifiers because the NSEvent API doesn’t let us ignore only some modifiers. In that case we use UCKeyTranslate (ns_get_shifted_character) - to look up the correct character. */ + to look up the correct character. - /* EV_MODIFIERS2 uses parse_solitary_modifier on all known + EV_MODIFIERS2 uses parse_solitary_modifier on all known modifier keys, which returns 0 for shift-like modifiers. Therefore its return value is the set of control-like - modifiers. */ - Lisp_Object kind = fnKeysym ? QCfunction : QCordinary; - emacs_event->modifiers = EV_MODIFIERS2 (flags, kind); + modifiers. - /* Function keys (such as the F-keys, arrow keys, etc.) set + Function keys (such as the F-keys, arrow keys, etc.) set modifiers as though the fn key has been pressed when it hasn't. Also some combinations of fn and a function key return a different key than was pressed (e.g. fn-<left> gives - <home>). We need to unset the fn modifier in these cases. - FIXME: Can we avoid setting it in the first place? */ - if (fnKeysym && (flags & NS_FUNCTION_KEY_MASK)) - emacs_event->modifiers - ^= parse_solitary_modifier (mod_of_kind (ns_function_modifier, - QCfunction)); + <home>). EV_MODIFIERS2 avoids setting the the fn modifier in + these cases. */ + + Lisp_Object kind = fnKeysym ? QCfunction : QCordinary; + emacs_event->modifiers = EV_MODIFIERS2 (flags, kind); if (NS_KEYLOG) fprintf (stderr, "keyDown: code =%x\tfnKey =%x\tflags = %x\tmods = %x\n", -- 2.26.1 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* bug#42915: 27.1; Setting ns-function-modifier to control breaks control for certain keys 2020-08-18 22:50 ` Alan Third @ 2021-06-12 12:49 ` Lars Ingebrigtsen 2021-06-12 12:58 ` Ryan C. Thompson 2021-06-12 13:07 ` Alan Third 0 siblings, 2 replies; 7+ messages in thread From: Lars Ingebrigtsen @ 2021-06-12 12:49 UTC (permalink / raw) To: Alan Third; +Cc: 42915, Ryan C. Thompson Alan Third <alan@idiocy.org> writes: >> As far as I can tell, this only started happening after I updated to Emacs >> 27. I was previously using this config with Emacs 26.3 and never saw this >> issue. So I believe this is a new bug in Emacs 27. > > Can you please try the attached patch? This was almost a year ago, but there was no response here. > Subject: [PATCH] Handle fn + functions keys better on NS (bug#42915) And as far as I can tell, this patch was never applied? Alan, is this something that should still go in? -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#42915: 27.1; Setting ns-function-modifier to control breaks control for certain keys 2021-06-12 12:49 ` Lars Ingebrigtsen @ 2021-06-12 12:58 ` Ryan C. Thompson 2021-06-12 13:07 ` Alan Third 1 sibling, 0 replies; 7+ messages in thread From: Ryan C. Thompson @ 2021-06-12 12:58 UTC (permalink / raw) To: Lars Ingebrigtsen, Alan Third; +Cc: 42915 On 6/12/21 8:49 AM, Lars Ingebrigtsen wrote: > Alan Third <alan@idiocy.org> writes: > >>> As far as I can tell, this only started happening after I updated to Emacs >>> 27. I was previously using this config with Emacs 26.3 and never saw this >>> issue. So I believe this is a new bug in Emacs 27. >> Can you please try the attached patch? > This was almost a year ago, but there was no response here. > >> Subject: [PATCH] Handle fn + functions keys better on NS (bug#42915) > And as far as I can tell, this patch was never applied? Alan, is this > something that should still go in? > My apologies for dropping the thread. If the patch is still relevant, I can try it out now. ^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#42915: 27.1; Setting ns-function-modifier to control breaks control for certain keys 2021-06-12 12:49 ` Lars Ingebrigtsen 2021-06-12 12:58 ` Ryan C. Thompson @ 2021-06-12 13:07 ` Alan Third 2021-06-12 13:13 ` Alan Third 1 sibling, 1 reply; 7+ messages in thread From: Alan Third @ 2021-06-12 13:07 UTC (permalink / raw) To: Lars Ingebrigtsen; +Cc: 42915, Ryan C. Thompson On Sat, Jun 12, 2021 at 02:49:58PM +0200, Lars Ingebrigtsen wrote: > Alan Third <alan@idiocy.org> writes: > > >> As far as I can tell, this only started happening after I updated to Emacs > >> 27. I was previously using this config with Emacs 26.3 and never saw this > >> issue. So I believe this is a new bug in Emacs 27. > > > > Can you please try the attached patch? > > This was almost a year ago, but there was no response here. > > > Subject: [PATCH] Handle fn + functions keys better on NS (bug#42915) > > And as far as I can tell, this patch was never applied? Alan, is this > something that should still go in? I believe so. IIRC it fixed a real bug that was documented in a FIXME comment. -- Alan Third ^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#42915: 27.1; Setting ns-function-modifier to control breaks control for certain keys 2021-06-12 13:07 ` Alan Third @ 2021-06-12 13:13 ` Alan Third 2021-07-10 16:29 ` Lars Ingebrigtsen 0 siblings, 1 reply; 7+ messages in thread From: Alan Third @ 2021-06-12 13:13 UTC (permalink / raw) To: Lars Ingebrigtsen, 42915, Ryan C. Thompson On Sat, Jun 12, 2021 at 02:07:36PM +0100, Alan Third wrote: > On Sat, Jun 12, 2021 at 02:49:58PM +0200, Lars Ingebrigtsen wrote: > > Alan Third <alan@idiocy.org> writes: > > > > >> As far as I can tell, this only started happening after I updated to Emacs > > >> 27. I was previously using this config with Emacs 26.3 and never saw this > > >> issue. So I believe this is a new bug in Emacs 27. > > > > > > Can you please try the attached patch? > > > > This was almost a year ago, but there was no response here. > > > > > Subject: [PATCH] Handle fn + functions keys better on NS (bug#42915) > > > > And as far as I can tell, this patch was never applied? Alan, is this > > something that should still go in? > > I believe so. IIRC it fixed a real bug that was documented in a FIXME > comment. Actually, no, it looks like it's been applied in a different form. Ryan, can you check whether Emacs 28 fixes the problem? -- Alan Third ^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#42915: 27.1; Setting ns-function-modifier to control breaks control for certain keys 2021-06-12 13:13 ` Alan Third @ 2021-07-10 16:29 ` Lars Ingebrigtsen 0 siblings, 0 replies; 7+ messages in thread From: Lars Ingebrigtsen @ 2021-07-10 16:29 UTC (permalink / raw) To: Alan Third; +Cc: 42915, Ryan C. Thompson Alan Third <alan@idiocy.org> writes: > Actually, no, it looks like it's been applied in a different form. > > Ryan, can you check whether Emacs 28 fixes the problem? More information was requested, but no response was given within a month, so I'm closing this bug report. If the problem still exists, please respond to this email and we'll reopen the bug report. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2021-07-10 16:29 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2020-08-18 14:22 bug#42915: 27.1; Setting ns-function-modifier to control breaks control for certain keys Ryan C. Thompson 2020-08-18 22:50 ` Alan Third 2021-06-12 12:49 ` Lars Ingebrigtsen 2021-06-12 12:58 ` Ryan C. Thompson 2021-06-12 13:07 ` Alan Third 2021-06-12 13:13 ` Alan Third 2021-07-10 16:29 ` Lars Ingebrigtsen
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).