Subject: Re: 29.0.50; `toggle-input-method' needs more user feedback

From: Case Duckworth <[email-masked]>
Date: Fri, 25 Feb 2022 11:18:02 -0600

Wow, some of my message was cut off.  The rest of my message is as
follows:

When I typed C-\, it toggled the input method to RFC 1345, but no
message was shown to the user indicating of that change.  I feel that
some message should be shown when switching input methods, no?  At least
something like

(message "Input format changed to %s" current-input-method)

Maybe there's an option for this and I missed it.

Case Duckworth <[email-masked]> writes:

> The other day I had some issues with typing that I could not figure out
> the meaning of.  I checked my messages buffer, C-h m, etc., and nowhere
> did I figure out that the issue was actually that I'd typed C-\
> (fatfingered it) and toggled the input method to
>
>
> In GNU Emacs 29.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.24, cairo version 1.16.0)
>  of 2022-02-23 built on bob
> Repository revision: 99ba8c03c8fac65c2497265c54e1bea49f7c6dd3
> Repository branch: master
> Windowing system distributor 'The X.Org Foundation', version 11.0.12011000
> System Description: Debian GNU/Linux 11 (bullseye)
>
> Configured using:
>  'configure --prefix=/home/case/.local --with-imagemagick --with-json
>  --with-file-notification=inotify --with-xwidgets
>  --with-native-compilation --with-xinput2'
>
> Configured features:
> ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ
> IMAGEMAGICK JPEG JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2
> M17N_FLT MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP
> SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS X11 XDBE XIM XINPUT2 XPM
> XWIDGETS GTK3 ZLIB
>
> Important settings:
>   value of $LANG: en_US.UTF-8
>   locale-coding-system: utf-8-unix
>
> Major mode: ELisp/d
>
> Minor modes in effect:
>   notmuch-bookmarks-mode: t
>   +org-attach-fix-args-mode: t
>   paredit-mode: t
>   paren-face-mode: t
>   smartscan-mode: t
>   yas-global-mode: t
>   yas-minor-mode: t
>   global-whitespace-cleanup-mode: t
>   whitespace-cleanup-mode: t
>   vertico-multiform-mode: t
>   vertico-mouse-mode: t
>   vertico-mode: t
>   global-undo-fu-session-mode: t
>   undo-fu-session-mode: t
>   super-save-mode: t
>   sophomore-mode: t
>   region-indicator-mode: t
>   file-percentage-mode: t
>   simple-modeline-mode: t
>   global-orglink-mode: t
>   orglink-mode: t
>   mode-line-bell-mode: t
>   minions-mode: t
>   marginalia-mode: t
>   eros-mode: t
>   jabber-activity-mode: t
>   isearch-mb-mode: t
>   Info-breadcrumbs-in-mode-line-mode: t
>   global-hungry-delete-mode: t
>   hungry-delete-mode: t
>   gcmh-mode: t
>   global-frowny-mode: t
>   frowny-mode: t
>   global-form-feed-mode: t
>   form-feed-mode: t
>   global-git-commit-mode: t
>   +kmacro-block-undo-mode: t
>   fill-sentences-correctly-mode: t
>   electric-cursor-mode: t
>   global-diff-hl-mode: t
>   crux-reopen-as-root-mode: t
>   shell-dirtrack-mode: t
>   tracking-mode: t
>   global-anzu-mode: t
>   anzu-mode: t
>   actually-selected-window-mode: t
>   +ace-window-display-mode: t
>   display-time-mode: t
>   +browse-url-transform-url-global-mode: t
>   +browse-url-transform-url-mode: t
>   user-save-global-mode: t
>   user-save-mode: t
>   pixel-scroll-precision-mode: t
>   repeat-mode: t
>   save-place-mode: t
>   savehist-mode: t
>   recentf-mode: t
>   global-goto-address-mode: t
>   goto-address-mode: t
>   delete-selection-mode: t
>   minibuffer-electric-default-mode: t
>   minibuffer-depth-indicate-mode: t
>   global-so-long-mode: t
>   electric-pair-mode: t
>   global-auto-revert-mode: t
>   +casing-mode: t
>   +key-mode: t
>   el-patch-use-package-mode: t
>   straight-use-package-mode: t
>   straight-package-neutering-mode: t
>   straight-live-modifications-mode: t
>   global-eldoc-mode: t
>   eldoc-mode: t
>   show-paren-mode: t
>   electric-indent-mode: t
>   mouse-wheel-mode: t
>   prettify-symbols-mode: t
>   tab-bar-mode: t
>   file-name-shadow-mode: t
>   context-menu-mode: t
>   global-font-lock-mode: t
>   font-lock-mode: t
>   auto-composition-mode: t
>   auto-encryption-mode: t
>   auto-compression-mode: t
>   column-number-mode: t
>   line-number-mode: t
>   auto-fill-function: yas--auto-fill
>   transient-mark-mode: t
>   hs-minor-mode: t
>
> Load-path shadows:
> /home/case/.emacs.d/.etc/straight/build/ol-notmuch/ol-notmuch hides /home/case/.emacs.d/.etc/straight/build/org-contrib/ol-notmuch
> /home/case/.emacs.d/.etc/straight/build/notmuch/notmuch-message hides /home/case/usr/share/emacs/site-lisp/notmuch-message
> /home/case/.emacs.d/.etc/straight/build/notmuch/notmuch-crypto hides /home/case/usr/share/emacs/site-lisp/notmuch-crypto
> /home/case/.emacs.d/.etc/straight/build/notmuch/notmuch-jump hides /home/case/usr/share/emacs/site-lisp/notmuch-jump
> /home/case/.emacs.d/.etc/straight/build/notmuch/notmuch-address hides /home/case/usr/share/emacs/site-lisp/notmuch-address
> /home/case/.emacs.d/.etc/straight/build/notmuch/notmuch-draft hides /home/case/usr/share/emacs/site-lisp/notmuch-draft
> /home/case/.emacs.d/.etc/straight/build/notmuch/notmuch-wash hides /home/case/usr/share/emacs/site-lisp/notmuch-wash
> /home/case/.emacs.d/.etc/straight/build/notmuch/notmuch-maildir-fcc hides /home/case/usr/share/emacs/site-lisp/notmuch-maildir-fcc
> /home/case/.emacs.d/.etc/straight/build/notmuch/notmuch-mua hides /home/case/usr/share/emacs/site-lisp/notmuch-mua
> /home/case/.emacs.d/.etc/straight/build/notmuch/notmuch-company hides /home/case/usr/share/emacs/site-lisp/notmuch-company
> /home/case/.emacs.d/.etc/straight/build/notmuch/notmuch-hello hides /home/case/usr/share/emacs/site-lisp/notmuch-hello
> /home/case/.emacs.d/.etc/straight/build/notmuch/notmuch-parser hides /home/case/usr/share/emacs/site-lisp/notmuch-parser
> /home/case/.emacs.d/.etc/straight/build/notmuch/notmuch-print hides /home/case/usr/share/emacs/site-lisp/notmuch-print
> /home/case/.emacs.d/.etc/straight/build/notmuch/notmuch-show hides /home/case/usr/share/emacs/site-lisp/notmuch-show
> /home/case/.emacs.d/.etc/straight/build/notmuch/coolj hides /home/case/usr/share/emacs/site-lisp/coolj
> /home/case/.emacs.d/.etc/straight/build/notmuch/notmuch-compat hides /home/case/usr/share/emacs/site-lisp/notmuch-compat
> /home/case/.emacs.d/.etc/straight/build/notmuch/notmuch-lib hides /home/case/usr/share/emacs/site-lisp/notmuch-lib
> /home/case/.emacs.d/.etc/straight/build/notmuch/notmuch hides /home/case/usr/share/emacs/site-lisp/notmuch
> /home/case/.emacs.d/.etc/straight/build/notmuch/notmuch-query hides /home/case/usr/share/emacs/site-lisp/notmuch-query
> /home/case/.emacs.d/.etc/straight/build/notmuch/notmuch-tree hides /home/case/usr/share/emacs/site-lisp/notmuch-tree
> /home/case/.emacs.d/.etc/straight/build/notmuch/notmuch-tag hides /home/case/usr/share/emacs/site-lisp/notmuch-tag
> /home/case/.emacs.d/.etc/straight/build/transient/transient hides /home/case/.local/share/emacs/29.0.50/lisp/transient
> /home/case/Sync/emacs/private/custom hides /home/case/.local/share/emacs/29.0.50/lisp/custom
> /home/case/.emacs.d/.etc/straight/build/xref/xref hides /home/case/.local/share/emacs/29.0.50/lisp/progmodes/xref
> /home/case/.emacs.d/.etc/straight/build/project/project hides /home/case/.local/share/emacs/29.0.50/lisp/progmodes/project
> /home/case/.emacs.d/.etc/straight/build/dictionary/dictionary hides /home/case/.local/share/emacs/29.0.50/lisp/net/dictionary
> /home/case/.emacs.d/.etc/straight/build/hierarchy/hierarchy hides /home/case/.local/share/emacs/29.0.50/lisp/emacs-lisp/hierarchy
> /home/case/.emacs.d/.etc/straight/build/let-alist/let-alist hides /home/case/.local/share/emacs/29.0.50/lisp/emacs-lisp/let-alist
>
> Features:
> (shadow sort mail-extr emacsbug consult-xref view shortdoc rfc1345 quail
> timer-list misearch multi-isearch transpose-frame circe-color-nicks
> circe-new-day-notifier topsy lui-track lui-autopaste eshell-bookmark
> eshell-syntax-highlighting em-unix em-term term ehelp em-script
> em-prompt em-ls em-hist em-pred em-glob em-extpipe em-cmpl em-dirs
> esh-var em-basic em-banner em-alias em-tramp em-smart esh-mode eshell
> esh-cmd esh-ext esh-opt esh-proc esh-io esh-arg esh-module esh-groups
> esh-util pocket-reader pocket-lib org-web-tools esxml-query
> rainbow-identifiers ov dotassoc kv shr-color textsec uni-scripts
> idna-mapping ucs-normalize uni-confusable textsec-check
> modus-vivendi-theme mm-archive hippie-completing-read calc-alg calc-ext
> calc-menu calc calc-loaddefs rect calc-macs cape
> display-fill-column-indicator dictionary link connection dired+
> image-dired filldent mastodon-tl network-stream url-cache
> mastodon-client mastodon-auth plstore mastodon-http request mastodon
> mastodon-toot emojify apropos tar-mode arc-mode archive-mode ht
> elfeed-link ol-notmuch consult-notmuch notmuch-labeler
> notmuch-labeler-plug notmuch-bookmarks +message +notmuch notmuch
> notmuch-tree notmuch-jump notmuch-hello notmuch-show notmuch-print
> notmuch-crypto notmuch-mua notmuch-message notmuch-draft
> notmuch-maildir-fcc notmuch-address notmuch-company notmuch-parser
> notmuch-wash coolj notmuch-query icalendar notmuch-tag notmuch-lib
> notmuch-version notmuch-compat org-duration org-colview discord
> org-archive mhtml-mode css-mode-expansions css-mode smie
> js-mode-expansions js cc-mode-expansions cc-mode cc-fonts cc-guess
> cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs loadhist
> undo-fu epithet descr-text tabify helpful trace edebug info-look f
> elisp-refs machine machine-autoloads cal-move mwim xref dired-aux
> org-download +org-attach org-attach async mule-util consult-imenu
> flymake-proc flymake paredit paren-face smartscan vc-mtn vc-hg vc-bzr
> vc-src vc-sccs vc-svn vc-cvs vc-rcs project embark-consult cus-start
> +consult affe consult-vertico consult cal-china lunar cal-bahai
> cal-islam cal-hebrew holidays hol-loaddefs cal-iso org-appear
> visual-fill-column hl-line cursor-sensor vertico-buffer cl-print debug
> backtrace +zzz-to-char zzz-to-char-autoloads zoom-frm-autoloads
> frame-cmds-autoloads frame-fns-autoloads ytdious-autoloads yasnippet
> yasnippet-autoloads yaoddmuse-autoloads xkcd-autoloads wrap-region
> wrap-region-autoloads whitespace-cleanup-mode whitespace
> whitespace-cleanup-mode-autoloads web-mode-autoloads w3m-autoloads
> vlf-setup vlf-autoloads visual-fill-column-autoloads vertico-quick
> vertico-multiform vertico-unobtrusive vertico-flat vertico-mouse
> vertico-directory +vertico vertico vertico-autoloads valign-autoloads
> unfill-autoloads undo-fu-session undo-fu-session-autoloads
> undo-fu-autoloads trashed-autoloads transpose-frame-autoloads
> topsy-autoloads titlecase titlecase-data titlecase-autoloads
> systemd-autoloads super-save super-save-autoloads
> ssh-config-mode-autoloads sophomore novice sophomore-autoloads
> smartscan-autoloads sly-autoloads slack-autoloads emojify-autoloads
> oauth2-autoloads websocket-autoloads +modeline simple-modeline
> simple-modeline-segments simple-modeline-core simple-modeline-autoloads
> shell-command+-autoloads pocket-reader-autoloads ht-autoloads
> org-web-tools-autoloads esxml-autoloads rainbow-identifiers-autoloads
> ov-autoloads pocket-lib-autoloads kv-autoloads plancat-autoloads
> paren-face-autoloads paredit-autoloads package-lint-flymake-autoloads
> package-lint-autoloads orglink orglink-autoloads org-visibility
> org-visibility-autoloads org-sticky-header-autoloads org-mime-autoloads
> org-download-autoloads async-autoloads org-appear-autoloads +orderless
> orderless orderless-autoloads ol-notmuch-autoloads
> notmuch-labeler-autoloads notmuch-bookmarks-autoloads +mwim
> mwim-autoloads modus-operandi-theme cal-julian dawn modus-themes
> modus-themes-autoloads mode-line-bell mode-line-bell-autoloads minions
> minions-autoloads md4rd-autoloads tree-mode-autoloads
> hierarchy-autoloads mastodon-autoloads request-autoloads marginalia
> marginalia-autoloads macrostep +link-hint link-hint link-hint-autoloads
> lin lin-autoloads lacarte-autoloads keychain-environment
> keychain-environment-autoloads keepassxc-shim secrets executable eros
> keepassxc-shim-autoloads +jabber jabber jabber-ourversion hippie-exp
> hexrgb fsm html-mode-expansions sgml-mode facemenu sasl sasl-anonymous
> sasl-login sasl-plain srv dns starttls tls jabber-autoloads isearch-mb
> isearch-mb-autoloads info+ info+-autoloads hungry-delete
> hungry-delete-autoloads hippie-completing-read-autoloads
> helpful-autoloads elisp-refs-autoloads f-autoloads god-mode-autoloads
> git-modes gitignore-mode gitconfig-mode conf-mode gitattributes-mode
> git-modes-autoloads scheme-complete-autoloads macrostep-geiser-autoloads
> macrostep-autoloads geiser-chicken-autoloads geiser-impl help-fns
> geiser-custom geiser-base geiser-autoloads gcmh gcmh-autoloads frowny
> frowny-autoloads form-feed form-feed-autoloads forge-list forge-commands
> forge-semi forge-bitbucket buck forge-gogs gogs forge-gitea gtea
> forge-gitlab glab forge-github ghub-graphql treepy gsexp ghub let-alist
> forge-notify forge-revnote forge-pullreq forge-issue forge-topic yaml
> bug-reference forge-post markdown-mode forge-repo forge forge-core
> forge-db closql emacsql-sqlite emacsql emacsql-compiler url-http
> url-auth url-gw nsm magit-bookmark magit-submodule magit-obsolete
> 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 package
> url-handlers magit-repos magit-apply magit-wip magit-log which-func
> imenu magit-diff smerge-mode diff git-commit log-edit add-log magit-core
> magit-autorevert magit-margin magit-transient magit-process with-editor
> server magit-mode transient edmacro +kmacro kmacro magit-git magit-base
> magit-section crm forge-autoloads yaml-autoloads markdown-mode-autoloads
> magit-autoloads magit-section-autoloads git-commit-autoloads
> with-editor-autoloads transient-autoloads ghub-autoloads
> treepy-autoloads let-alist-autoloads closql-autoloads
> emacsql-sqlite-autoloads emacsql-autoloads +flyspell-correct
> flyspell-correct flyspell-correct-autoloads filldent-autoloads
> fill-sentences-correctly fill-sentences-correctly-autoloads
> +expand-region expand-region text-mode-expansions
> the-org-mode-expansions er-basic-expansions expand-region-core
> expand-region-custom exec-path-from-shell exec-path-from-shell-autoloads
> eshell-syntax-highlighting-autoloads eshell-bookmark-autoloads
> eros-autoloads epithet-autoloads embrace-autoloads
> expand-region-autoloads embark-consult-autoloads +embark embark ffap
> embark-autoloads elpher-autoloads elfeed-org s org-clock _work bryc
> teklia org-vcard-autoloads chd chd-data org-eldoc face-remap image-file
> image-converter oc-basic disp-table ol-eww +eww eww mm-url ol-rmail
> ol-mhe ol-irc ol-info ol-gnus nnselect ol-docview doc-view jka-compr
> image-mode exif ol-bibtex bibtex ol-bbdb ol-w3m ol-doi org-link-doi
> org-contacts org-capture gnus-art mm-uu mml2015 mm-view mml-smime smime
> dig gnus-sum gnus-group gnus-undo gnus-start gnus-dbus dbus gnus-cloud
> nnimap nnmail mail-source utf7 netrc nnoo gnus-spec gnus-int gnus-range
> gnus-win gnus nnheader range +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 org-agenda ox-html table ox-ascii
> ox-publish ox org-element org-persist xdg org-id org-refile org ob
> ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-footnote org-src
> ob-comint org-pcomplete org-list org-faces org-entities noutline outline
> org-version ob-emacs-lisp ob-core ob-eval org-table ol org-keys oc
> org-compat org-macs org-loaddefs find-func elfeed-org-autoloads +elfeed
> elfeed-show elfeed-search vc-git +hideshow hideshow bookmark message
> yank-media rmc rfc822 mml mml-sec epa epg rfc6068 epg-config gnus-util
> mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils
> mailheader shr pixel-fill kinsoku svg dom elfeed-csv elfeed elfeed-curl
> elfeed-log elfeed-db elfeed-lib avl-tree generator url-queue url-file
> url-dired xml-query xml elfeed-autoloads electric-cursor
> electric-cursor-autoloads edit-server-autoloads ebuku-autoloads
> dumb-jump-autoloads popup-autoloads s-autoloads discord-autoloads
> dired-subtree dired-subtree-autoloads dired-open dired-hacks-utils dash
> dired-open-autoloads dired-hacks-utils-autoloads dash-autoloads
> dired-git-info-autoloads diff-hl log-view pcvs-util vc-dir ewoc vc
> vc-dispatcher diff-hl-autoloads dictionary-autoloads link-autoloads
> connection-autoloads +crux crux tramp tramp-loaddefs trampver
> tramp-integration files-x tramp-compat shell pcomplete parse-time
> iso8601 time-date ls-lisp format-spec crux-autoloads crossword-autoloads
> corfu-autoloads consult-notmuch-autoloads notmuch-autoloads
> consult-dir-autoloads project-autoloads xref-autoloads clhs-autoloads
> circe-chanop +circe circe diff-mode lui-irc-colors irc gnutls puny lcs
> lui-logging lui-format lui tracking shorten flyspell +ispell cl ispell
> circe-compat +util _circe _passwords circe-autoloads cape-autoloads
> bongo-autoloads checkdoc +avy anzu advice anzu-autoloads alert-autoloads
> log4e-autoloads gntp-autoloads affe-autoloads consult-autoloads
> adaptive-wrap-autoloads actually-selected-window
> actually-selected-window-autoloads +ace-window ace-window avy
> ace-window-autoloads avy-autoloads 0x0-autoloads time +tab-bar +scratch
> +org-capture org-contrib-autoloads sendmail rfc2047 rfc2045 ietf-drums
> mm-util mail-prsvr mail-utils +finger net-utils +minibuffer +Info
> +eshell +elisp dired+-autoloads comp comp-cstr warnings autoload
> radix-tree lisp-mnt dired-x dired dired-loaddefs compile
> text-property-search comint ansi-color _location +browse-url browse-url
> url url-proxy url-privacy url-expand url-methods url-history url-cookie
> url-domsuf url-util url-parse url-vars mailcap user-save reading +pulse
> pulse color +cus-edit cus-edit pp autoinsert auth-source eieio
> eieio-core eieio-loaddefs password-cache json map +init cus-load +lisp
> +emacs pixel-scroll ring repeat saveplace savehist recentf tree-widget
> wid-edit goto-addr delsel minibuf-eldef mb-depth so-long elec-pair
> autorevert filenotify +casing thingatpt +key private early-init
> +straight +setup setup setup-autoloads no-littering
> no-littering-autoloads finder-inf el-patch-autoloads el-patch
> el-patch-stub straight-x straight-autoloads cl-seq info cl-extra
> help-mode straight compat derived cl-macs easy-mmode seq byte-opt
> bytecomp byte-compile cconv cl-loaddefs cl-lib subr-x acdw rx pcase
> solar cal-dst diary-lib diary-loaddefs cal-menu calendar cal-loaddefs gv
> iso-transl tooltip eldoc paren electric uniquify ediff-hook vc-hooks
> lisp-float-type elisp-mode mwheel term/x-win x-win term/common-win x-dnd
> 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 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 emoji-zwj charscript
> charprop case-table epa-hook jka-cmpr-hook help simple abbrev obarray
> cl-preloaded nadvice button 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
> xwidget-internal dbusbind inotify lcms2 dynamic-setting
> system-font-setting font-render-setting cairo move-toolbar gtk x-toolkit
> xinput2 x multi-tty make-network-process native-compile emacs)
>
> Memory information:
> ((conses 16 2262756 372939)
>  (symbols 48 81531 22)
>  (strings 32 387252 60078)
>  (string-bytes 1 12360770)
>  (vectors 16 174868)
>  (vector-slots 8 2532628 1833078)
>  (floats 8 1426 4447)
>  (intervals 56 155810 18346)
>  (buffers 992 99))
>
> --
> Hugs,
> Case Duckworth
> https://www.acdw.net
> https://breadpunk.club

--
Hugs,
Case Duckworth
https://www.acdw.net
https://breadpunk.club