all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* bug#72419: 31.0.50; Macro editing can't deal with event appliers
@ 2024-08-02 12:36 Alexander Prähauser via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2024-08-17  7:36 ` Eli Zaretskii
  0 siblings, 1 reply; 8+ messages in thread
From: Alexander Prähauser via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-08-02 12:36 UTC (permalink / raw)
  To: 72419


If I

1. Evaluate
(define-key function-key-map (kbd "<XF86Launch6>")
'event-apply-meta-modifier)

2. Do kmacro-start-macro-or-insert-counter, define a macro featuring
<XF86Launch6> and end the definition with kmacro-end-or-call-macro.

3. Use kmacro-edit-macro,

I get

edit-kbd-macro: Wrong type argument: arrayp, event-apply-meta-modifier

This was tested using emacs --no-init.


In GNU Emacs 31.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version
 3.24.41, cairo version 1.18.0) of 2024-07-14 built on localhost
Repository revision: a44376432de78374017c2009163a9242acbf6355
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12101013
System Description: Gentoo Linux

Configured using:
 'configure --prefix=/usr --build=x86_64-pc-linux-gnu
 --host=x86_64-pc-linux-gnu --mandir=/usr/share/man
 --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc
 --localstatedir=/var/lib --datarootdir=/usr/share
 --disable-silent-rules --docdir=/usr/share/doc/emacs-31.0.9999
 --htmldir=/usr/share/doc/emacs-31.0.9999/html --libdir=/usr/lib64
 --program-suffix=-emacs-31-vcs --includedir=/usr/include/emacs-31-vcs
 --infodir=/usr/share/info/emacs-31-vcs --localstatedir=/var
 --enable-locallisppath=/etc/emacs:/usr/share/emacs/site-lisp
 --without-compress-install --without-hesiod --without-pop
 --with-file-notification=inotify --with-pdumper --enable-acl
 --enable-xattr --with-dbus --with-modules --with-gameuser=:gamestat
 --with-libgmp --with-gpm --with-native-compilation=aot
 --without-kerberos --without-kerberos5 --with-lcms2 --with-xml2
 --with-mailutils --without-selinux --without-sqlite3 --with-gnutls
 --with-libsystemd --with-threads --with-tree-sitter --without-wide-int
 --with-sound=alsa --with-zlib --with-x --without-pgtk --without-ns
 --without-gconf --without-gsettings --with-toolkit-scroll-bars
 --with-xpm --with-xft --with-cairo --with-harfbuzz --without-libotf
 --without-m17n-flt --with-x-toolkit=gtk3 --without-xwidgets --with-gif
 --with-jpeg --with-png --with-rsvg --with-tiff --without-webp
 --with-imagemagick --with-dumping=pdumper 'CFLAGS=-march=znver2
 --param=l1-cache-line-size=64 --param=l1-cache-size=32
 --param=l2-cache-size=512 -O2 -pipe -fno-fast-math -ffp-contract=off'
 CPPFLAGS= 'LDFLAGS=-Wl,-O1 -Wl,--as-needed
 -Wl,-z,pack-relative-relocs''

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM HARFBUZZ IMAGEMAGICK
JPEG LCMS2 LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER
PNG RSVG SECCOMP SOUND THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER X11
XDBE XIM XINPUT2 XPM GTK3 ZLIB

Important settings:
  value of $LANG: en_US.utf8
  locale-coding-system: utf-8-unix

Major mode: Dired by name

Minor modes in effect:
  pdf-occur-dired-minor-mode: t
  citar-embark-mode: t
  global-edit-server-edit-mode: t
  global-goto-address-mode: t
  goto-address-mode: t
  auto-insert-mode: t
  dynamic-completion-mode: t
  electric-pair-mode: t
  corfu-history-mode: t
  delete-selection-mode: t
  global-undo-tree-mode: t
  telega-root-auto-fill-mode: t
  telega-contact-birthdays-mode: t
  telega-active-video-chats-mode: t
  telega-active-locations-mode: t
  telega-patrons-mode: t
  telega-active-stories-mode: t
  Daselt-mode: t
  Info-breadcrumbs-in-mode-line-mode: t
  global-org-modern-mode: t
  TeX-PDF-mode: t
  fancy-compilation-mode: t
  eshell-vterm-mode: t
  yas-global-mode: t
  yas-minor-mode: t
  all-the-icons-completion-mode: t
  all-the-icons-dired-mode: t
  global-aggressive-indent-mode: t
  org-roam-db-autosync-mode: t
  corfu-prescient-mode: t
  vertico-prescient-mode: t
  global-corfu-mode: t
  corfu-mode: t
  marginalia-mode: t
  global-git-commit-mode: t
  magit-auto-revert-mode: t
  savehist-mode: t
  vertico-mode: t
  smart-mark-mode: t
  windmove-mode: t
  winner-mode: 1
  recentf-mode: t
  dired-hide-details-mode: t
  straight-use-package-mode: t
  straight-package-neutering-mode: t
  override-global-mode: t
  desktop-save-mode: t
  tooltip-mode: t
  eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  global-prettify-symbols-mode: t
  tab-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  undelete-frame-mode: t
  minibuffer-regexp-mode: t
  buffer-read-only: t
  line-number-mode: t
  global-visual-line-mode: t
  visual-line-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
~/.emacs.d/site-lisp/DEmacs/DEmacs-basic/add-tex-envs hides /home/alex/.emacs.d/site-lisp/add-tex-envs
/home/alex/.emacs.d/straight/build/corfu-terminal/corfu-terminal hides /home/alex/.emacs.d/elpa/corfu-terminal-0.7/corfu-terminal
/home/alex/.emacs.d/straight/build/corfu-terminal/corfu-terminal-autoloads hides /home/alex/.emacs.d/elpa/corfu-terminal-0.7/corfu-terminal-autoloads
/home/alex/.emacs.d/straight/build/corfu/corfu hides /home/alex/.emacs.d/elpa/corfu-20240523.752/corfu
/home/alex/.emacs.d/straight/build/corfu/corfu-quick hides /home/alex/.emacs.d/elpa/corfu-20240523.752/corfu-quick
/home/alex/.emacs.d/straight/build/corfu/corfu-popupinfo hides /home/alex/.emacs.d/elpa/corfu-20240523.752/corfu-popupinfo
/home/alex/.emacs.d/straight/build/corfu/corfu-info hides /home/alex/.emacs.d/elpa/corfu-20240523.752/corfu-info
/home/alex/.emacs.d/straight/build/corfu/corfu-indexed hides /home/alex/.emacs.d/elpa/corfu-20240523.752/corfu-indexed
/home/alex/.emacs.d/straight/build/corfu/corfu-history hides /home/alex/.emacs.d/elpa/corfu-20240523.752/corfu-history
/home/alex/.emacs.d/straight/build/corfu/corfu-echo hides /home/alex/.emacs.d/elpa/corfu-20240523.752/corfu-echo
/home/alex/.emacs.d/straight/build/corfu/corfu-autoloads hides /home/alex/.emacs.d/elpa/corfu-20240523.752/corfu-autoloads
/home/alex/.emacs.d/straight/build/consult/consult hides /home/alex/.emacs.d/elpa/consult-20240523.754/consult
/home/alex/.emacs.d/straight/build/consult/consult-xref hides /home/alex/.emacs.d/elpa/consult-20240523.754/consult-xref
/home/alex/.emacs.d/straight/build/consult/consult-register hides /home/alex/.emacs.d/elpa/consult-20240523.754/consult-register
/home/alex/.emacs.d/straight/build/consult/consult-org hides /home/alex/.emacs.d/elpa/consult-20240523.754/consult-org
/home/alex/.emacs.d/straight/build/consult/consult-kmacro hides /home/alex/.emacs.d/elpa/consult-20240523.754/consult-kmacro
/home/alex/.emacs.d/straight/build/consult/consult-info hides /home/alex/.emacs.d/elpa/consult-20240523.754/consult-info
/home/alex/.emacs.d/straight/build/consult/consult-imenu hides /home/alex/.emacs.d/elpa/consult-20240523.754/consult-imenu
/home/alex/.emacs.d/straight/build/consult/consult-flymake hides /home/alex/.emacs.d/elpa/consult-20240523.754/consult-flymake
/home/alex/.emacs.d/straight/build/consult/consult-compile hides /home/alex/.emacs.d/elpa/consult-20240523.754/consult-compile
/home/alex/.emacs.d/straight/build/consult/consult-autoloads hides /home/alex/.emacs.d/elpa/consult-20240523.754/consult-autoloads
/home/alex/.emacs.d/elpa/org-projectile-helm-20230817.801/org-projectile-helm hides /home/alex/.emacs.d/elpa/org-projectile-20230817.851/org-projectile-helm
/home/alex/.emacs.d/straight/build/popon/popon hides /home/alex/.emacs.d/elpa/popon-0.13/popon
/home/alex/.emacs.d/straight/build/popon/popon-autoloads hides /home/alex/.emacs.d/elpa/popon-0.13/popon-autoloads
/home/alex/.emacs.d/straight/build/compat/compat-25 hides /usr/share/emacs/site-lisp/compat/compat-25
/home/alex/.emacs.d/straight/build/compat/compat-26 hides /usr/share/emacs/site-lisp/compat/compat-26
/home/alex/.emacs.d/straight/build/compat/compat-27 hides /usr/share/emacs/site-lisp/compat/compat-27
/home/alex/.emacs.d/straight/build/compat/compat-28 hides /usr/share/emacs/site-lisp/compat/compat-28
/home/alex/.emacs.d/straight/build/compat/compat-29 hides /usr/share/emacs/site-lisp/compat/compat-29
/home/alex/.emacs.d/straight/build/compat/compat-macs hides /usr/share/emacs/site-lisp/compat/compat-macs
/home/alex/.emacs.d/straight/build/compat/compat-tests hides /usr/share/emacs/site-lisp/compat/compat-tests
/home/alex/.emacs.d/straight/build/compat/compat hides /usr/share/emacs/site-lisp/compat/compat
/home/alex/.emacs.d/elpa/dash-20240510.1327/dash hides /usr/share/emacs/site-lisp/dash/dash
/usr/share/emacs/site-lisp/desktop-entry-mode hides /usr/share/emacs/site-lisp/desktop-file-utils/desktop-entry-mode
/home/alex/.emacs.d/elpa/f-20240308.906/f hides /usr/share/emacs/site-lisp/f/f
/home/alex/.emacs.d/elpa/password-store-20231201.954/password-store hides /usr/share/emacs/site-lisp/pass/password-store
/home/alex/.emacs.d/elpa/s-20220902.1511/s hides /usr/share/emacs/site-lisp/s/s
/home/alex/.emacs.d/elpa/with-editor-20240618.1840/with-editor hides /usr/share/emacs/site-lisp/with-editor/with-editor
/home/alex/.emacs.d/elpa/bind-key-20230203.2004/bind-key hides /usr/share/emacs/31.0.50/lisp/bind-key
/home/alex/.emacs.d/elpa/transient-20240619.1324/transient hides /usr/share/emacs/31.0.50/lisp/transient
/home/alex/.emacs.d/elpa/modus-themes-4.4.0/theme-loaddefs hides /usr/share/emacs/31.0.50/lisp/theme-loaddefs
/home/alex/.emacs.d/elpa/use-package-20230426.2324/use-package-bind-key hides /usr/share/emacs/31.0.50/lisp/use-package/use-package-bind-key
/home/alex/.emacs.d/elpa/use-package-20230426.2324/use-package-core hides /usr/share/emacs/31.0.50/lisp/use-package/use-package-core
/home/alex/.emacs.d/elpa/use-package-20230426.2324/use-package-delight hides /usr/share/emacs/31.0.50/lisp/use-package/use-package-delight
/home/alex/.emacs.d/elpa/use-package-20230426.2324/use-package-diminish hides /usr/share/emacs/31.0.50/lisp/use-package/use-package-diminish
/home/alex/.emacs.d/elpa/use-package-ensure-system-package-20221209.2013/use-package-ensure-system-package hides /usr/share/emacs/31.0.50/lisp/use-package/use-package-ensure-system-package
/home/alex/.emacs.d/elpa/use-package-20230426.2324/use-package-ensure hides /usr/share/emacs/31.0.50/lisp/use-package/use-package-ensure
/home/alex/.emacs.d/elpa/use-package-20230426.2324/use-package-jump hides /usr/share/emacs/31.0.50/lisp/use-package/use-package-jump
/home/alex/.emacs.d/elpa/use-package-20230426.2324/use-package-lint hides /usr/share/emacs/31.0.50/lisp/use-package/use-package-lint
/home/alex/.emacs.d/elpa/use-package-20230426.2324/use-package hides /usr/share/emacs/31.0.50/lisp/use-package/use-package
/home/alex/.emacs.d/straight/build/compat/compat hides /usr/share/emacs/31.0.50/lisp/emacs-lisp/compat
/home/alex/.emacs.d/straight/build/seq/seq hides /usr/share/emacs/31.0.50/lisp/emacs-lisp/seq
/home/alex/.emacs.d/site-lisp/dired+ hides /home/alex/.emacs.d/site-lisp/icicles/dired+
/home/alex/.emacs.d/elpa/bookmark+-20230325.160624/bookmark+ hides /home/alex/.emacs.d/site-lisp/icicles/bookmark+
~/.emacs.d/site-lisp/Avy-act-on-Distance/avy-act-on-distance hides /home/alex/.emacs.d/site-lisp/DEmacs/avy-act-on-distance/avy-act-on-distance

Features:
(shadow tabify man sort gnus-cite smiley mm-archive mail-extr gnus-bcklg
gnus-async qp gnus-ml nndraft nnmh nnmaildir nnfolder utf-7 gnus-agent
gnus-srvr gnus-score score-mode nnvirtual gnus-msg nntp gnus-cache
cus-start default-text-scale sanityinc-tomorrow-day-theme shr-color
shortdoc consult-register textsec uni-scripts idna-mapping ucs-normalize
uni-confusable textsec-check network-stream url-cache vc-hg vc-bzr
tramp-cmds misearch multi-isearch reftex-sel reftex-ref reftex-toc
image-file image-converter vertico-directory dabbrev cape-char
citar-latex reftex-cite reftex-parse vc tramp-cache time-stamp tramp-sh
mule-util reveal eglot external-completion jsonrpc seq-25 ert debug
backtrace conf-mode pdf-occur ibuf-ext ibuffer ibuffer-loaddefs
cc-mode-expansions cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles
cc-align cc-engine cc-vars cc-defs bug-reference pdf-annot tablist
tablist-filter semantic/wisent/comp semantic/wisent
semantic/wisent/wisent semantic/util-modes semantic/util semantic
semantic/tag semantic/lex semantic/fw mode-local cedet pdf-outline
pdf-history pdf-links pdf-sync pdf-isearch pdf-misc reftex-dcr
reftex-auc tex-mode font-latex latexenc citar-capf citar-embark citar
citar-file citar-cache citar-format mixed-pitch ol-eww eww mm-url
ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect ol-docview doc-view
ol-bbdb ol-w3m ol-doi org-link-doi vc-git vc-dispatcher
display-line-numbers smtpmail gnus-registry registry gnus-art mm-uu
mml2015 mm-view mml-smime smime gnutls dig gnus-sum gnus-group gnus-undo
gnus-start gnus-dbus gnus-cloud nnimap nnmail mail-source nnoo gnus-spec
gnus-win gnus-int gnus-range imap rfc2104 utf7 gnus nnheader range
edit-server epa-file goto-addr autoinsert completion elec-pair
corfu-history delsel undo-tree telega-obsolete telega
telega-tdlib-events telega-webpage telega-match telega-root telega-info
telega-chat visual-fill-column telega-modes telega-company telega-emoji
telega-user telega-notifications notifications telega-voip telega-msg
telega-story telega-tme telega-sticker telega-vvnote bindat
telega-ffplay telega-i18n telega-sort telega-filter telega-ins
telega-inline telega-util telega-folders telega-topic telega-media
telega-tdlib rainbow-identifiers dired-aux telega-server telega-core
telega-customize emacsbug DEmacs DEmacs-cdlatex-bindings DEmacs-modes
DEmacs-basic-modes DEmacs-commands DEmacs-basic-commands
DEmacs-variables DEmacs-basic-variables DEmacs-keys DEmacs-functions
DEmacs-basic-keys DEmacs-basic-functions avy-act-on-distance menu-bar+
misc-cmds rect bookmark+ bookmark+-key bookmark+-bmu info+ fit-frame
help-fns+ wid-edit+ help-fns radix-tree bookmark+-lit pp+ dired-x
crosshairs col-highlight vline hl-line+ bookmark+-1 thingatpt+ empv
back-button nav-flash smartrep rainbow-blocks org-rainbow-tags
dired-rainbow dired-hacks-utils rainbow-delimiters rainbow-mode
modus-themes abyss-theme yaml-mode-expansions yaml-mode julia-snail
spinner pulse popup eldoc-box flycheck ox-md org-modern math-delimiters
add-tex-envs cdlatex reftex reftex-loaddefs reftex-vars latex-extra
preview latex-mode-expansions latex latex-flymake flymake tex-ispell
tex-style tex dbus texmathp fancy-compilation eshell-vterm em-term
esh-ext esh-proc esh-opt esh-io esh-arg esh-module esh-module-loaddefs
esh-util vterm tramp trampver tramp-integration files-x tramp-message
tramp-compat tramp-loaddefs face-remap term disp-table ehelp
vterm-module term/xterm xterm unicode-fonts font-utils dynamic-fonts
ztree ztree-diff ztree-diff-model ztree-dir ztree-view ztree-protocol
ztree-util yasnippet elgrep async grep dedicated auto-dictionary
flyspell ispell all-the-icons-completion all-the-icons-dired
all-the-icons all-the-icons-faces data-material data-weathericons
data-octicons data-fileicons data-faicons data-alltheicons go-translate
gt-text-utility gt-engine-echo gt-engine-libre gt-engine-chatgpt
gt-engine-youdao gt-engine-stardict gt-engine-deepl gt-engine-google-rpc
gt-engine-google gt-engine-bing gt-extension gt-faces gt-core plz
gt-httpx tabgo tab-line dired-quick-sort ls-lisp aggressive-indent
visible-mark org-noter-org-roam org-noter org-noter-djvu org-noter-nov
org-noter-pdf pdf-tools cus-edit cus-load pdf-view jka-compr pdf-cache
pdf-info tq pdf-util pdf-macs image-mode exif org-noter-core
ekg-import-subdirectories ekg-org-roam org-roam-dailies ekg ewoc
triples-upgrade triples-backups triples org-roam-export
use-package-ensure-system-package system-packages consult-org-roam
consult-org-roam-buffer org-ref org-ref-core openalex request
org-ref-glossary org-ref-bibtex html-mode-expansions sgml-mode facemenu
avy doi-utils url-http url-auth url-gw nsm org-ref-utils org-ref-export
citeproc citeproc-itemgetters citeproc-biblatex parse-time
citeproc-bibtex ol-bibtex citeproc-cite citeproc-subbibs citeproc-sort
citeproc-name citeproc-formatters citeproc-number rst compile
citeproc-proc citeproc-disamb citeproc-itemdata
citeproc-generic-elements citeproc-macro citeproc-choose citeproc-date
citeproc-context citeproc-prange citeproc-style citeproc-locale
citeproc-term citeproc-rt citeproc-lib citeproc-s queue ox-org 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-ref-misc-links org-ref-label-link
org-ref-ref-links org-ref-citation-links xref project
org-ref-bibliography-links hydra lv bibtex-completion parsebib
org-roam-migrate org-roam-log org-roam-mode org-roam-capture org-roam-id
org-roam-node org-roam-db emacsql-sqlite-builtin sqlite org-roam-utils
org-roam-compat org-roam org-capture emacsql-sqlite
emacsql-sqlite-common emacsql emacsql-compiler org-brain picture
org-agenda org-attach biblio biblio-download biblio-dissemin biblio-ieee
biblio-hal biblio-dblp biblio-crossref biblio-arxiv timezone biblio-doi
biblio-core let-alist url-queue ido hl-line bibtex iso8601 cape pass f s
password-store auth-source-pass kind-icon svg-lib corfu-prescient
vertico-prescient prescient char-fold corfu-terminal popon corfu
consult-gh consult-gh-autoloads compat-autoloads seq-autoloads
embark-consult consult embark-org embark marginalia orderless
magit-bookmark magit-submodule 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 which-func magit-diff
smerge-mode diff diff-mode track-changes git-commit log-edit message
sendmail yank-media rfc822 mml mml-sec epa derived epg rfc6068
epg-config gnus-util mm-decode mm-bodies mm-encode mail-parse rfc2231
rfc2047 rfc2045 mm-util ietf-drums mail-prsvr mailabbrev mail-utils
gmm-utils mailheader pcvs-util add-log magit-core magit-autorevert
autorevert filenotify magit-margin magit-transient magit-process
with-editor shell server magit-mode transient magit-git magit-base
magit-section cursor-sensor crm persistent-soft list-utils pcache
eieio-base savehist vertico-buffer vertico-mouse vertico compat
smartparens loadhist dash expand-region text-mode-expansions
the-org-mode-expansions er-basic-expansions expand-region-core
expand-region-custom easy-kill-extras advice easy-kill-line-edge
easy-kill-buffer easy-kill-to-char easy-kill org-element org-persist xdg
org-id org-refile org-element-ast inline avl-tree generator smart-mark
buffer-move windmove winner rebinder gnus-dired nov recentf tree-widget
wid-edit org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro
org-src sh-script smie treesit executable ob-comint org-pcomplete
pcomplete comint ansi-osc ansi-color ring org-list org-footnote
org-faces org-entities time-date noutline outline org-version
ob-emacs-lisp ob-core ob-eval org-cycle org-table ol org-fold
org-fold-core org-keys oc org-loaddefs cal-menu calendar cal-loaddefs
org-compat org-macs format-spec imenu bookmark pp shr
text-property-search pixel-fill kinsoku url-file puny svg xml
esxml-query dom finder-inf dired-du find-dired edmacro auto-install ffap
thingatpt find-func dired dired-loaddefs straight-autoloads straight
use-package use-package-ensure use-package-delight use-package-diminish
use-package-bind-key bind-key easy-mmode use-package-core comp comp-cstr
cl-extra help-mode warnings comp-run comp-common rx kmacro desktop
frameset icicles-install cl sanityinc-tomorrow-bright-theme
color-theme-sanityinc-tomorrow color site-gentoo abyss-theme-autoloads
aggressive-indent-autoloads all-the-icons-completion-autoloads
all-the-icons-dired-autoloads auctex-cluttex-autoloads
auto-dictionary-autoloads back-button-autoloads backup-walker-autoloads
buffer-move-autoloads cape-autoloads cdlatex-autoloads
citar-embark-autoloads citar-autoloads
color-theme-sanityinc-tomorrow-autoloads consult-lsp-autoloads
consult-org-roam-autoloads corfu-prescient-autoloads
corfu-terminal-autoloads corfu-autoloads cquery-autoloads
dedicated-autoloads default-text-scale-autoloads diminish-autoloads
dired-quick-sort-autoloads dired-rainbow-autoloads
dired-hacks-utils-autoloads dynamic-fonts-autoloads
easy-kill-extras-autoloads eldoc-box-autoloads elgrep-autoloads
embark-consult-autoloads consult-autoloads embark-autoloads
emms-autoloads empv-autoloads eshell-vterm-autoloads
expand-region-autoloads fancy-compilation-autoloads flycheck-autoloads
forge-autoloads closql-autoloads ghub-autoloads go-translate-autoloads
julia-snail-autoloads kind-icon-autoloads latex-extra-autoloads
auctex-autoloads tex-site lsp-julia-autoloads julia-mode-autoloads
lsp-ui-autoloads lsp-mode-autoloads marginalia-autoloads
markdown-mode-autoloads mixed-pitch-autoloads modus-themes-autoloads
mood-line-autoloads nav-flash-autoloads nov-autoloads esxml-autoloads
kv-autoloads orderless-autoloads org-brain-autoloads
org-modern-autoloads org-noter-autoloads helm-autoloads
helm-core-autoloads async-autoloads org-rainbow-tags-autoloads
org-ref-autoloads citeproc-autoloads htmlize-autoloads
org-roam-bibtex-autoloads bibtex-completion-autoloads biblio-autoloads
biblio-core-autoloads org-roam-autoloads emacsql-autoloads
ox-pandoc-autoloads paredit-autoloads parsebib-autoloads pass-autoloads
f-autoloads password-store-otp-autoloads password-store-autoloads
perspective-autoloads plz-autoloads popon-autoloads popup-autoloads
rainbow-blocks-autoloads rainbow-mode-autoloads smart-mark-autoloads
smartparens-autoloads smartrep-autoloads smudge-autoloads
speed-type-autoloads spinner-autoloads string-inflection-autoloads
svg-lib-autoloads tabgo-autoloads tablist-autoloads telega-autoloads
treemacs-all-the-icons-autoloads all-the-icons-autoloads
treemacs-icons-dired-autoloads treemacs-magit-autoloads magit-autoloads
pcase magit-section-autoloads git-commit-autoloads transient-autoloads
treemacs-persp-autoloads persp-mode-autoloads
treemacs-projectile-autoloads projectile-autoloads
treemacs-tab-bar-autoloads treemacs-autoloads posframe-autoloads
treepy-autoloads triples-autoloads try-autoloads unicode-fonts-autoloads
ucs-utils-autoloads font-utils-autoloads persistent-soft-autoloads
list-utils-autoloads pcache-autoloads
use-package-ensure-system-package-autoloads system-packages-autoloads
vertico-prescient-autoloads vertico-autoloads prescient-autoloads
visible-mark-autoloads visual-fill-column-autoloads vterm-autoloads
wfnames-autoloads with-editor-autoloads yaml-autoloads
yaml-mode-autoloads yasnippet-autoloads zotero-autoloads oauth-autoloads
info dash-autoloads ztree-autoloads package browse-url url url-proxy
url-privacy url-expand url-methods url-history url-cookie
generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse
auth-source cl-seq eieio eieio-core cl-macs icons password-cache json
subr-x map byte-opt gv bytecomp byte-compile url-vars cl-loaddefs cl-lib
rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook
vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win
term/common-win x-dnd touch-screen tool-bar dnd fontset image regexp-opt
fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode
register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select
scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors
frame minibuffer nadvice seq simple cl-generic indonesian philippine
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 emoji-zwj charscript
charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure
cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp
files window text-properties overlay sha1 md5 base64 format env
code-pages mule custom widget keymap hashtable-print-readable backquote
threads dbusbind inotify lcms2 dynamic-setting font-render-setting cairo
gtk x-toolkit xinput2 x multi-tty move-toolbar make-network-process
native-compile emacs)

Memory information:
((conses 16 3575298 2015658) (symbols 48 125556 81) (strings 32 698934 194734)
 (string-bytes 1 24592935) (vectors 16 219375) (vector-slots 8 3633581 1362052)
 (floats 8 6434 100962) (intervals 56 153480 14456) (buffers 992 163))






^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#72419: 31.0.50; Macro editing can't deal with event appliers
  2024-08-02 12:36 bug#72419: 31.0.50; Macro editing can't deal with event appliers Alexander Prähauser via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2024-08-17  7:36 ` Eli Zaretskii
  2024-08-17  9:39   ` Visuwesh
  0 siblings, 1 reply; 8+ messages in thread
From: Eli Zaretskii @ 2024-08-17  7:36 UTC (permalink / raw)
  To: Alexander Prähauser; +Cc: 72419

> Date: Fri, 02 Aug 2024 12:36:44 +0000
> From:  Alexander Prähauser via "Bug reports for GNU Emacs,
>  the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
> 
> 
> If I
> 
> 1. Evaluate
> (define-key function-key-map (kbd "<XF86Launch6>")
> 'event-apply-meta-modifier)
> 
> 2. Do kmacro-start-macro-or-insert-counter, define a macro featuring
> <XF86Launch6> and end the definition with kmacro-end-or-call-macro.
> 
> 3. Use kmacro-edit-macro,
> 
> I get
> 
> edit-kbd-macro: Wrong type argument: arrayp, event-apply-meta-modifier

I don't have the XF86Launch6 function key on my keyboard, so I cannot
investigate this issue.  It is not clear to me what function keys I
could use instead.  Could you perhaps post a recipe using a function
key that exists on all popular keyboards?

Failing that, what command is XF86Launch6 bound to in "emacs -Q"?

Also, what did you expect to happen as result of what you did?

Thanks.





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#72419: 31.0.50; Macro editing can't deal with event appliers
  2024-08-17  7:36 ` Eli Zaretskii
@ 2024-08-17  9:39   ` Visuwesh
  2024-08-17 10:56     ` Eli Zaretskii
  0 siblings, 1 reply; 8+ messages in thread
From: Visuwesh @ 2024-08-17  9:39 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: Alexander Prähauser, 72419

[சனி ஆகஸ்ட் 17, 2024] Eli Zaretskii wrote:

>> Date: Fri, 02 Aug 2024 12:36:44 +0000
>> From:  Alexander Prähauser via "Bug reports for GNU Emacs,
>>  the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
>> 
>> 
>> If I
>> 
>> 1. Evaluate
>> (define-key function-key-map (kbd "<XF86Launch6>")
>> 'event-apply-meta-modifier)
>> 
>> 2. Do kmacro-start-macro-or-insert-counter, define a macro featuring
>> <XF86Launch6> and end the definition with kmacro-end-or-call-macro.
>> 
>> 3. Use kmacro-edit-macro,
>> 
>> I get
>> 
>> edit-kbd-macro: Wrong type argument: arrayp, event-apply-meta-modifier
>
> I don't have the XF86Launch6 function key on my keyboard, so I cannot
> investigate this issue.  It is not clear to me what function keys I
> could use instead.  Could you perhaps post a recipe using a function
> key that exists on all popular keyboards?

Rather than binding a command to XF86Launch6, typing C-x @ m reproduces
the error here.





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#72419: 31.0.50; Macro editing can't deal with event appliers
  2024-08-17  9:39   ` Visuwesh
@ 2024-08-17 10:56     ` Eli Zaretskii
  2024-08-17 14:20       ` Visuwesh
  0 siblings, 1 reply; 8+ messages in thread
From: Eli Zaretskii @ 2024-08-17 10:56 UTC (permalink / raw)
  To: Visuwesh; +Cc: ahprae, 72419

> From: Visuwesh <visuweshm@gmail.com>
> Cc: Alexander Prähauser <ahprae@protonmail.com>,
>   72419@debbugs.gnu.org
> Date: Sat, 17 Aug 2024 15:09:31 +0530
> 
> [சனி ஆகஸ்ட் 17, 2024] Eli Zaretskii wrote:
> 
> >> Date: Fri, 02 Aug 2024 12:36:44 +0000
> >> From:  Alexander Prähauser via "Bug reports for GNU Emacs,
> >>  the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
> >> 
> >> 
> >> If I
> >> 
> >> 1. Evaluate
> >> (define-key function-key-map (kbd "<XF86Launch6>")
> >> 'event-apply-meta-modifier)
> >> 
> >> 2. Do kmacro-start-macro-or-insert-counter, define a macro featuring
> >> <XF86Launch6> and end the definition with kmacro-end-or-call-macro.
> >> 
> >> 3. Use kmacro-edit-macro,
> >> 
> >> I get
> >> 
> >> edit-kbd-macro: Wrong type argument: arrayp, event-apply-meta-modifier
> >
> > I don't have the XF86Launch6 function key on my keyboard, so I cannot
> > investigate this issue.  It is not clear to me what function keys I
> > could use instead.  Could you perhaps post a recipe using a function
> > key that exists on all popular keyboards?
> 
> Rather than binding a command to XF86Launch6, typing C-x @ m reproduces
> the error here.

Thanks, but I don't think I follow: type "C-x @ m" instead of which
step in the OP's recipe?

Could you show a complete recipe, please?





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#72419: 31.0.50; Macro editing can't deal with event appliers
  2024-08-17 10:56     ` Eli Zaretskii
@ 2024-08-17 14:20       ` Visuwesh
  2024-08-17 15:45         ` Eli Zaretskii
  0 siblings, 1 reply; 8+ messages in thread
From: Visuwesh @ 2024-08-17 14:20 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: ahprae, 72419

[சனி ஆகஸ்ட் 17, 2024] Eli Zaretskii wrote:

>> Rather than binding a command to XF86Launch6, typing C-x @ m reproduces
>> the error here.
>
> Thanks, but I don't think I follow: type "C-x @ m" instead of which
> step in the OP's recipe?
>
> Could you show a complete recipe, please?

Here's what I followed:

1. emacs -Q
2. C-x (
3. C-x @ m x
4. C-g 
4. C-x )
5. M-x kmacro-edit-macro RET





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#72419: 31.0.50; Macro editing can't deal with event appliers
  2024-08-17 14:20       ` Visuwesh
@ 2024-08-17 15:45         ` Eli Zaretskii
  2024-08-19 18:37           ` Alexander Prähauser via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2024-08-20 19:04           ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
  0 siblings, 2 replies; 8+ messages in thread
From: Eli Zaretskii @ 2024-08-17 15:45 UTC (permalink / raw)
  To: Visuwesh, Stefan Monnier; +Cc: ahprae, 72419

> From: Visuwesh <visuweshm@gmail.com>
> Cc: ahprae@protonmail.com,  72419@debbugs.gnu.org
> Date: Sat, 17 Aug 2024 19:50:01 +0530
> 
> [சனி ஆகஸ்ட் 17, 2024] Eli Zaretskii wrote:
> 
> >> Rather than binding a command to XF86Launch6, typing C-x @ m reproduces
> >> the error here.
> >
> > Thanks, but I don't think I follow: type "C-x @ m" instead of which
> > step in the OP's recipe?
> >
> > Could you show a complete recipe, please?
> 
> Here's what I followed:
> 
> 1. emacs -Q
> 2. C-x (
> 3. C-x @ m x
> 4. C-g 
> 4. C-x )
> 5. M-x kmacro-edit-macro RET

Thanks.  This seems to be a very old bug.  Looks like indeed macro
editing was not adapted to support event modifier-applying commands,
or maybe it's a problem with function-key-map.

Perhaps Stefan (CC'ed) will have some suggestions.





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#72419: 31.0.50; Macro editing can't deal with event appliers
  2024-08-17 15:45         ` Eli Zaretskii
@ 2024-08-19 18:37           ` Alexander Prähauser via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2024-08-20 19:04           ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
  1 sibling, 0 replies; 8+ messages in thread
From: Alexander Prähauser via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-08-19 18:37 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 72419, Stefan Monnier, Visuwesh

"Eli Zaretskii" <eliz@gnu.org> writes:

Sorry for not replying previously, for some reason I didn't see those
mails at all! I guess it's not so important now, but I'm using dual
function keys (which is a pretty awesome program) to virtually map
higher FN-keys, like F16, to the Alt-keys when they are tapped, then
configure Emacs to apply the Meta-modifier when it receives an F16
signal, which it calls XF86Launch6. This way, I don't have to
strain my hand holding Alt to apply Meta and can use the keys to access
another keyboard layer when they are held. Btw, with the same program
one can apply Ctrl when Space is held, greatly reducing hand strain.

>> From: Visuwesh <visuweshm@gmail.com>
>> Cc: ahprae@protonmail.com,  72419@debbugs.gnu.org
>> Date: Sat, 17 Aug 2024 19:50:01 +0530
>>
>> [சனி ஆகஸ்ட் 17, 2024] Eli Zaretskii wrote:
>>
>> >> Rather than binding a command to XF86Launch6, typing C-x @ m reproduces
>> >> the error here.
>> >
>> > Thanks, but I don't think I follow: type "C-x @ m" instead of which
>> > step in the OP's recipe?
>> >
>> > Could you show a complete recipe, please?
>>
>> Here's what I followed:
>>
>> 1. emacs -Q
>> 2. C-x (
>> 3. C-x @ m x
>> 4. C-g
>> 4. C-x )
>> 5. M-x kmacro-edit-macro RET
>
> Thanks.  This seems to be a very old bug.  Looks like indeed macro
> editing was not adapted to support event modifier-applying commands,
> or maybe it's a problem with function-key-map.
>
> Perhaps Stefan (CC'ed) will have some suggestions.






^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#72419: 31.0.50; Macro editing can't deal with event appliers
  2024-08-17 15:45         ` Eli Zaretskii
  2024-08-19 18:37           ` Alexander Prähauser via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2024-08-20 19:04           ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
  1 sibling, 0 replies; 8+ messages in thread
From: Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-08-20 19:04 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: ahprae, 72419, Visuwesh

> Thanks.  This seems to be a very old bug.  Looks like indeed macro
> editing was not adapted to support event modifier-applying commands,
> or maybe it's a problem with function-key-map.

AFAICT the problem is not specific to event modifier-applying thingies
but to any use of a function binding (i.e. a dynamic remapping) in
`(local-)function-key-map`.

The ugly hack below seems to work for the given recipe, but I tried
a related recipe:

    emacs -Q --nw -f xterm-mouse-mode
    C-x (
    click mouse-1 somewhere to move point
    C-x )
    M-x kmacro-edit-macro RET

and the resulting macro still doesn't look right at all.


        Stefan


diff --git a/lisp/edmacro.el b/lisp/edmacro.el
index c63f7f30c5e..28f74e03b4a 100644
--- a/lisp/edmacro.el
+++ b/lisp/edmacro.el
@@ -593,16 +593,26 @@ edmacro-format-keys
 			      (prog1 (vconcat "C-u " (cl-subseq rest-mac 1 i) " ")
 				(cl-callf cl-subseq rest-mac i)))))))
 	     (bind-len (apply #'max 1
+			      ;; FIXME: Pass `maps' to `lookup-key' directly!
 			      (cl-loop for map in maps
                                        for b = (lookup-key map rest-mac)
                                        when b collect b)))
 	     (key (cl-subseq rest-mac 0 bind-len))
 	     (fkey nil) tlen tkey
+	     ;; FIXME: Pass `maps' to `lookup-key' directly!
 	     (bind (or (cl-loop for map in maps for b = (lookup-key map key)
                                 thereis (and (not (integerp b)) b))
 		       (and (setq fkey (lookup-key local-function-key-map rest-mac))
 			    (setq tlen fkey tkey (cl-subseq rest-mac 0 tlen)
 				  fkey (lookup-key local-function-key-map tkey))
+                            (progn
+                              (when (functionp fkey)
+                                (let ((unread-command-events
+                                       (append (cl-subseq rest-mac tlen) nil)))
+                                  (setq fkey (funcall fkey ""))
+                                  (setq rest-mac (vconcat tkey unread-command-events))))
+                              t)
+			    ;; FIXME: Pass `maps' to `lookup-key' directly!
 			    (cl-loop for map in maps
                                      for b = (lookup-key map fkey)
                                      when (and (not (integerp b)) b)






^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2024-08-20 19:04 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-02 12:36 bug#72419: 31.0.50; Macro editing can't deal with event appliers Alexander Prähauser via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-08-17  7:36 ` Eli Zaretskii
2024-08-17  9:39   ` Visuwesh
2024-08-17 10:56     ` Eli Zaretskii
2024-08-17 14:20       ` Visuwesh
2024-08-17 15:45         ` Eli Zaretskii
2024-08-19 18:37           ` Alexander Prähauser via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-08-20 19:04           ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.