Subject: 25.3; ffap's messages don't distinguish between finding, reading, windowing and alternating files

From: [email-masked] (H. Dieter Wilhelm)
Date: Mon, 29 Jan 2018 08:36:02 +0100

Dear maintainer,

please enhance the echo area messages of:

ffap-read-only
ffap-other-window
ffap-read-only-other-window
ffap-alternate-file
ffap-alternate-file-other-window

In contrast to the analogue  messages of

find-file-read-only
find-file-other-window
find-file-read-only-other-window
find-alternate-file
find-alternate-file-other-window

the ffap-* commands show only one and the same message (as ffap) and
don't distinguish their implementation.  This would be helpful.

Thanks

        Dieter

In GNU Emacs 25.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.22.11)
 of 2017-12-21 built on urmel
Windowing system distributor 'The X.Org Foundation', version 11.0.11902000
System Description:	Debian GNU/Linux 9.3 (stretch)

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS
NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11

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

Major mode: Group

Minor modes in effect:
  csv-field-index-mode: t
  gnus-topic-mode: t
  cursor-sensor-mode: t
  show-paren-mode: t
  electric-pair-mode: t
  icomplete-mode: t
  diff-auto-refine-mode: t
  shell-dirtrack-mode: t
  global-hl-line-mode: t
  async-bytecomp-package-mode: t
  display-time-mode: t
  gnus-undo-mode: t
  auto-insert-mode: t
  server-mode: t
  minibuffer-depth-indicate-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
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t
  abbrev-mode: t

Recent messages:
Mark all unread articles in nnimap+1und1:Trash as read? (y or n) y
Saving /home/dieter/.emacs.d/.newsrc.eld...
Saving file /home/dieter/.emacs.d/.newsrc.eld...
Wrote /home/dieter/.emacs.d/.newsrc.eld
Saving /home/dieter/.emacs.d/.newsrc.eld...done
Followed link to /home/dieter/dotfiles/.emacs.d/init.el
Mark saved where search started
Type C-x 1 to delete the help window.
mouse-2, RET: find function's definition
Making completion list...

Load-path shadows:
/home/dieter/.emacs.d/elpa/org-20171218/ob-screen hides /usr/local/src/emacs-25.3/lisp/org/ob-screen
/home/dieter/.emacs.d/elpa/org-20171218/ob-exp hides /usr/local/src/emacs-25.3/lisp/org/ob-exp
/home/dieter/.emacs.d/elpa/org-20171218/ox-html hides /usr/local/src/emacs-25.3/lisp/org/ox-html
/home/dieter/.emacs.d/elpa/org-20171218/ob-java hides /usr/local/src/emacs-25.3/lisp/org/ob-java
/home/dieter/.emacs.d/elpa/org-20171218/ob-perl hides /usr/local/src/emacs-25.3/lisp/org/ob-perl
/home/dieter/.emacs.d/elpa/org-20171218/org-mouse hides /usr/local/src/emacs-25.3/lisp/org/org-mouse
/home/dieter/.emacs.d/elpa/org-20171218/org-entities hides /usr/local/src/emacs-25.3/lisp/org/org-entities
/home/dieter/.emacs.d/elpa/org-20171218/ob-makefile hides /usr/local/src/emacs-25.3/lisp/org/ob-makefile
/home/dieter/.emacs.d/elpa/org-20171218/ob-ditaa hides /usr/local/src/emacs-25.3/lisp/org/ob-ditaa
/home/dieter/.emacs.d/elpa/org-20171218/ox-latex hides /usr/local/src/emacs-25.3/lisp/org/ox-latex
/home/dieter/.emacs.d/elpa/org-20171218/org-capture hides /usr/local/src/emacs-25.3/lisp/org/org-capture
/home/dieter/.emacs.d/elpa/org-20171218/ob-maxima hides /usr/local/src/emacs-25.3/lisp/org/ob-maxima
/home/dieter/.emacs.d/elpa/org-20171218/org-attach hides /usr/local/src/emacs-25.3/lisp/org/org-attach
/home/dieter/.emacs.d/elpa/org-20171218/ob-emacs-lisp hides /usr/local/src/emacs-25.3/lisp/org/ob-emacs-lisp
/home/dieter/.emacs.d/elpa/org-20171218/org-clock hides /usr/local/src/emacs-25.3/lisp/org/org-clock
/home/dieter/.emacs.d/elpa/org-20171218/org-bbdb hides /usr/local/src/emacs-25.3/lisp/org/org-bbdb
/home/dieter/.emacs.d/elpa/org-20171218/ob-comint hides /usr/local/src/emacs-25.3/lisp/org/ob-comint
/home/dieter/.emacs.d/elpa/org-20171218/org-compat hides /usr/local/src/emacs-25.3/lisp/org/org-compat
/home/dieter/.emacs.d/elpa/org-20171218/ob-io hides /usr/local/src/emacs-25.3/lisp/org/ob-io
/home/dieter/.emacs.d/elpa/org-20171218/ob-ruby hides /usr/local/src/emacs-25.3/lisp/org/ob-ruby
/home/dieter/.emacs.d/elpa/org-20171218/ob-fortran hides /usr/local/src/emacs-25.3/lisp/org/ob-fortran
/home/dieter/.emacs.d/elpa/org-20171218/ox-icalendar hides /usr/local/src/emacs-25.3/lisp/org/ox-icalendar
/home/dieter/.emacs.d/elpa/org-20171218/org-rmail hides /usr/local/src/emacs-25.3/lisp/org/org-rmail
/home/dieter/.emacs.d/elpa/org-20171218/ox-texinfo hides /usr/local/src/emacs-25.3/lisp/org/ox-texinfo
/home/dieter/.emacs.d/elpa/org-20171218/org-inlinetask hides /usr/local/src/emacs-25.3/lisp/org/org-inlinetask
/home/dieter/.emacs.d/elpa/org-20171218/ob-C hides /usr/local/src/emacs-25.3/lisp/org/ob-C
/home/dieter/.emacs.d/elpa/org-20171218/org-faces hides /usr/local/src/emacs-25.3/lisp/org/org-faces
/home/dieter/.emacs.d/elpa/org-20171218/org-mobile hides /usr/local/src/emacs-25.3/lisp/org/org-mobile
/home/dieter/.emacs.d/elpa/org-20171218/org-version hides /usr/local/src/emacs-25.3/lisp/org/org-version
/home/dieter/.emacs.d/elpa/org-20171218/org hides /usr/local/src/emacs-25.3/lisp/org/org
/home/dieter/.emacs.d/elpa/org-20171218/ob-awk hides /usr/local/src/emacs-25.3/lisp/org/ob-awk
/home/dieter/.emacs.d/elpa/org-20171218/ob-org hides /usr/local/src/emacs-25.3/lisp/org/ob-org
/home/dieter/.emacs.d/elpa/org-20171218/org-footnote hides /usr/local/src/emacs-25.3/lisp/org/org-footnote
/home/dieter/.emacs.d/elpa/org-20171218/org-pcomplete hides /usr/local/src/emacs-25.3/lisp/org/org-pcomplete
/home/dieter/.emacs.d/elpa/org-20171218/org-irc hides /usr/local/src/emacs-25.3/lisp/org/org-irc
/home/dieter/.emacs.d/elpa/org-20171218/ob-matlab hides /usr/local/src/emacs-25.3/lisp/org/ob-matlab
/home/dieter/.emacs.d/elpa/org-20171218/ob-dot hides /usr/local/src/emacs-25.3/lisp/org/ob-dot
/home/dieter/.emacs.d/elpa/org-20171218/ob-calc hides /usr/local/src/emacs-25.3/lisp/org/ob-calc
/home/dieter/.emacs.d/elpa/org-20171218/ob hides /usr/local/src/emacs-25.3/lisp/org/ob
/home/dieter/.emacs.d/elpa/org-20171218/org-eshell hides /usr/local/src/emacs-25.3/lisp/org/org-eshell
/home/dieter/.emacs.d/elpa/org-20171218/ob-ref hides /usr/local/src/emacs-25.3/lisp/org/ob-ref
/home/dieter/.emacs.d/elpa/org-20171218/ox-ascii hides /usr/local/src/emacs-25.3/lisp/org/ox-ascii
/home/dieter/.emacs.d/elpa/org-20171218/ob-shen hides /usr/local/src/emacs-25.3/lisp/org/ob-shen
/home/dieter/.emacs.d/elpa/org-20171218/ox-beamer hides /usr/local/src/emacs-25.3/lisp/org/ox-beamer
/home/dieter/.emacs.d/elpa/org-20171218/org-element hides /usr/local/src/emacs-25.3/lisp/org/org-element
/home/dieter/.emacs.d/elpa/org-20171218/org-macro hides /usr/local/src/emacs-25.3/lisp/org/org-macro
/home/dieter/.emacs.d/elpa/org-20171218/ob-sass hides /usr/local/src/emacs-25.3/lisp/org/ob-sass
/home/dieter/.emacs.d/elpa/org-20171218/ox-org hides /usr/local/src/emacs-25.3/lisp/org/ox-org
/home/dieter/.emacs.d/elpa/org-20171218/org-gnus hides /usr/local/src/emacs-25.3/lisp/org/org-gnus
/home/dieter/.emacs.d/elpa/org-20171218/ob-sqlite hides /usr/local/src/emacs-25.3/lisp/org/ob-sqlite
/home/dieter/.emacs.d/elpa/org-20171218/ob-octave hides /usr/local/src/emacs-25.3/lisp/org/ob-octave
/home/dieter/.emacs.d/elpa/org-20171218/ob-eval hides /usr/local/src/emacs-25.3/lisp/org/ob-eval
/home/dieter/.emacs.d/elpa/org-20171218/ob-ocaml hides /usr/local/src/emacs-25.3/lisp/org/ob-ocaml
/home/dieter/.emacs.d/elpa/org-20171218/ox-man hides /usr/local/src/emacs-25.3/lisp/org/ox-man
/home/dieter/.emacs.d/elpa/org-20171218/ob-mscgen hides /usr/local/src/emacs-25.3/lisp/org/ob-mscgen
/home/dieter/.emacs.d/elpa/org-20171218/ob-css hides /usr/local/src/emacs-25.3/lisp/org/ob-css
/home/dieter/.emacs.d/elpa/org-20171218/org-mhe hides /usr/local/src/emacs-25.3/lisp/org/org-mhe
/home/dieter/.emacs.d/elpa/org-20171218/org-agenda hides /usr/local/src/emacs-25.3/lisp/org/org-agenda
/home/dieter/.emacs.d/elpa/org-20171218/org-ctags hides /usr/local/src/emacs-25.3/lisp/org/org-ctags
/home/dieter/.emacs.d/elpa/org-20171218/ox-publish hides /usr/local/src/emacs-25.3/lisp/org/ox-publish
/home/dieter/.emacs.d/elpa/org-20171218/ob-gnuplot hides /usr/local/src/emacs-25.3/lisp/org/ob-gnuplot
/home/dieter/.emacs.d/elpa/org-20171218/org-feed hides /usr/local/src/emacs-25.3/lisp/org/org-feed
/home/dieter/.emacs.d/elpa/org-20171218/ob-haskell hides /usr/local/src/emacs-25.3/lisp/org/ob-haskell
/home/dieter/.emacs.d/elpa/org-20171218/ox-odt hides /usr/local/src/emacs-25.3/lisp/org/ox-odt
/home/dieter/.emacs.d/elpa/org-20171218/ox hides /usr/local/src/emacs-25.3/lisp/org/ox
/home/dieter/.emacs.d/elpa/org-20171218/ob-table hides /usr/local/src/emacs-25.3/lisp/org/ob-table
/home/dieter/.emacs.d/elpa/org-20171218/org-crypt hides /usr/local/src/emacs-25.3/lisp/org/org-crypt
/home/dieter/.emacs.d/elpa/org-20171218/ob-plantuml hides /usr/local/src/emacs-25.3/lisp/org/ob-plantuml
/home/dieter/.emacs.d/elpa/org-20171218/org-loaddefs hides /usr/local/src/emacs-25.3/lisp/org/org-loaddefs
/home/dieter/.emacs.d/elpa/org-20171218/org-timer hides /usr/local/src/emacs-25.3/lisp/org/org-timer
/home/dieter/.emacs.d/elpa/org-20171218/org-datetree hides /usr/local/src/emacs-25.3/lisp/org/org-datetree
/home/dieter/.emacs.d/elpa/org-20171218/ob-sql hides /usr/local/src/emacs-25.3/lisp/org/ob-sql
/home/dieter/.emacs.d/elpa/org-20171218/ob-python hides /usr/local/src/emacs-25.3/lisp/org/ob-python
/home/dieter/.emacs.d/elpa/org-20171218/ox-md hides /usr/local/src/emacs-25.3/lisp/org/ox-md
/home/dieter/.emacs.d/elpa/org-20171218/org-colview hides /usr/local/src/emacs-25.3/lisp/org/org-colview
/home/dieter/.emacs.d/elpa/org-20171218/ob-latex hides /usr/local/src/emacs-25.3/lisp/org/ob-latex
/home/dieter/.emacs.d/elpa/org-20171218/org-list hides /usr/local/src/emacs-25.3/lisp/org/org-list
/home/dieter/.emacs.d/elpa/org-20171218/ob-scheme hides /usr/local/src/emacs-25.3/lisp/org/ob-scheme
/home/dieter/.emacs.d/elpa/org-20171218/ob-lilypond hides /usr/local/src/emacs-25.3/lisp/org/ob-lilypond
/home/dieter/.emacs.d/elpa/org-20171218/ob-keys hides /usr/local/src/emacs-25.3/lisp/org/ob-keys
/home/dieter/.emacs.d/elpa/org-20171218/ob-lob hides /usr/local/src/emacs-25.3/lisp/org/ob-lob
/home/dieter/.emacs.d/elpa/org-20171218/ob-picolisp hides /usr/local/src/emacs-25.3/lisp/org/ob-picolisp
/home/dieter/.emacs.d/elpa/org-20171218/org-table hides /usr/local/src/emacs-25.3/lisp/org/org-table
/home/dieter/.emacs.d/elpa/org-20171218/ob-core hides /usr/local/src/emacs-25.3/lisp/org/ob-core
/home/dieter/.emacs.d/elpa/org-20171218/ob-asymptote hides /usr/local/src/emacs-25.3/lisp/org/ob-asymptote
/home/dieter/.emacs.d/elpa/org-20171218/ob-lisp hides /usr/local/src/emacs-25.3/lisp/org/ob-lisp
/home/dieter/.emacs.d/elpa/org-20171218/org-protocol hides /usr/local/src/emacs-25.3/lisp/org/org-protocol
/home/dieter/.emacs.d/elpa/org-20171218/org-habit hides /usr/local/src/emacs-25.3/lisp/org/org-habit
/home/dieter/.emacs.d/elpa/org-20171218/org-docview hides /usr/local/src/emacs-25.3/lisp/org/org-docview
/home/dieter/.emacs.d/elpa/org-20171218/org-id hides /usr/local/src/emacs-25.3/lisp/org/org-id
/home/dieter/.emacs.d/elpa/org-20171218/ob-tangle hides /usr/local/src/emacs-25.3/lisp/org/ob-tangle
/home/dieter/.emacs.d/elpa/org-20171218/org-indent hides /usr/local/src/emacs-25.3/lisp/org/org-indent
/home/dieter/.emacs.d/elpa/org-20171218/ob-clojure hides /usr/local/src/emacs-25.3/lisp/org/ob-clojure
/home/dieter/.emacs.d/elpa/org-20171218/ob-R hides /usr/local/src/emacs-25.3/lisp/org/ob-R
/home/dieter/.emacs.d/elpa/org-20171218/ob-js hides /usr/local/src/emacs-25.3/lisp/org/ob-js
/home/dieter/.emacs.d/elpa/org-20171218/org-bibtex hides /usr/local/src/emacs-25.3/lisp/org/org-bibtex
/home/dieter/.emacs.d/elpa/org-20171218/org-w3m hides /usr/local/src/emacs-25.3/lisp/org/org-w3m
/home/dieter/.emacs.d/elpa/org-20171218/org-archive hides /usr/local/src/emacs-25.3/lisp/org/org-archive
/home/dieter/.emacs.d/elpa/org-20171218/org-macs hides /usr/local/src/emacs-25.3/lisp/org/org-macs
/home/dieter/.emacs.d/elpa/org-20171218/org-plot hides /usr/local/src/emacs-25.3/lisp/org/org-plot
/home/dieter/.emacs.d/elpa/org-20171218/org-install hides /usr/local/src/emacs-25.3/lisp/org/org-install
/home/dieter/.emacs.d/elpa/org-20171218/org-src hides /usr/local/src/emacs-25.3/lisp/org/org-src
/home/dieter/.emacs.d/elpa/org-20171218/org-info hides /usr/local/src/emacs-25.3/lisp/org/org-info
/home/dieter/.emacs.d/elpa/org-20171218/ob-ledger hides /usr/local/src/emacs-25.3/lisp/org/ob-ledger

Features:
(shadow emacsbug gnus-fun org-table reftex-parse rect csv-mode autoload
lisp-mnt tramp-sh descr-text autorevert filenotify dired-aux dabbrev
eieio-opt cal-iso cal-move view woman man time-stamp whitespace
flow-fill gnus-kill misearch multi-isearch term ehelp smtpmail
bbdb-message mailalias sendmail flyspell ispell sort gnus-cite smiley
shr-color color shr dom mail-extr gnus-async gnus-bcklg gnus-dup qp
gnus-ml disp-table gnus-topic cursor-sensor mm-archive url-cache
url-handlers nnrss mm-url nndraft nnmh utf-7 nnmbox nnfolder bbdb-gnus
bbdb-mua epa-file epa network-stream nsm starttls gnus-agent gnus-srvr
gnus-score score-mode nnvirtual gnus-msg gnus-art mm-uu mml2015 mm-view
mml-smime smime dig gnus-cache gnus-demon nntp sh-script smie imenu ffap
paren elec-pair icomplete dired-x ob-org ob-maxima ob-latex ob-sh
ob-calc calc-store calc-trail calc-ext ob-R ob-python ox-koma-letter
ox-beamer ox-bibtex org-attach vc-git diff-mode org-id ess-toolbar
ess-mouse mouseme thingatpt ess-menu ess-swv ess-noweb
ess-noweb-font-lock-mode ess-bugs-l essd-els ess-sas-d ess-sas-l
ess-sas-a ess-sta-d ess-sta-l cc-vars cc-defs make-regexp ess-sp6-d
ess-dde ess-sp3-d ess-julia derived ess-r-d ess-r-syntax
ess-r-completion ess-roxy essddr hideshow ess-help reporter
ess-r-package ess-s-l speedbar sb-image ezimage dframe ess ess-inf
ess-tracebug ess-mode ess-noweb-mode ess-utils tramp tramp-compat
tramp-loaddefs trampver ucs-normalize shell ess-generics ess-custom
executable ess-compat ess-site org-mobile org-agenda org-capture cl
org-ref org-ref-helm-bibtex org-ref-helm helm-utils helm-bibtex
bibtex-completion biblio biblio-download biblio-dissemin biblio-hal
biblio-dblp biblio-crossref biblio-arxiv biblio-doi biblio-core
let-alist url-queue ido hl-line helm-net browse-url xml helm-help helm
helm-source eieio-compat helm-multi-match helm-lib helm-config
helm-easymenu async-bytecomp async org-ref-core warnings edmacro kmacro
reftex-cite reftex reftex-vars parsebib 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-glossary org-ref-bibtex org-ref-citeproc key-chord hydra lv
doi-utils org-ref-utils org-ref-pdf pdf-tools compile cus-edit cus-start
cus-load pdf-view bookmark pp pdf-cache pdf-info tq pdf-util url-http
url url-proxy url-privacy url-expand url-methods url-history mailcap
url-auth url-cookie url-domsuf url-util url-parse url-gw url-vars json
map f s dash calc calc-loaddefs calc-macs auth-source eieio eieio-core
cl-macs cal-china lunar solar cal-dst cal-bahai cal-islam cal-hebrew
holidays hol-loaddefs appt diary-lib diary-loaddefs battery time
bbdb-print bbdb-com crm bbdb bbdb-site timezone bbdb-loaddefs org-eldoc
org-rmail org-mhe org-irc org-info org-gnus nnir gnus-sum gnus-group
gnus-undo gnus-start gnus-cloud nnimap nnmail mail-source tls gnutls
utf7 netrc nnoo parse-time gnus-spec gnus-int gnus-range message rfc822
mml mml-sec password-cache epg mm-decode mm-bodies mm-encode mail-parse
rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev gmm-utils mailheader
gnus-win gnus gnus-ems nnheader gnus-util mail-utils mm-util help-fns
mail-prsvr wid-edit org-docview doc-view subr-x jka-compr image-mode
dired org-bibtex bibtex org-bbdb org-w3m org-element cl-seq avl-tree org
advice org-macro org-footnote org-pcomplete pcomplete org-list org-faces
org-entities noutline outline easy-mmode org-version ob-emacs-lisp ob
ob-tangle org-src ob-ref ob-lob ob-table ob-keys ob-exp ob-comint comint
ansi-color ring ob-core ob-eval org-compat org-macs org-loaddefs
format-spec find-func cal-menu calendar cal-loaddefs autoinsert server
mb-depth finder-inf info package epg-config seq byte-opt gv bytecomp
byte-compile cl-extra help-mode easymenu cconv cl-loaddefs pcase cl-lib
time-date mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel x-win term/common-win x-dnd tool-bar dnd fontset
image regexp-opt fringe tabulated-list newcomment elisp-mode lisp-mode
prog-mode register page menu-bar rfn-eshadow timer select scroll-bar
mouse jit-lock font-lock syntax facemenu font-core frame 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 charscript case-table epa-hook
jka-cmpr-hook help simple abbrev minibuffer 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 dbusbind inotify dynamic-setting
system-font-setting font-render-setting move-toolbar gtk x-toolkit x
multi-tty make-network-process emacs)

Memory information:
((conses 16 1855247 149048)
 (symbols 48 83598 216)
 (miscs 40 2395 2905)
 (strings 32 306181 30448)
 (string-bytes 1 9095261)
 (vectors 16 103233)
 (vector-slots 8 2379691 64635)
 (floats 8 1467 1912)
 (intervals 56 135049 2562)
 (buffers 976 201))

-- 
Best wishes
H. Dieter Wilhelm
Kelkheim, Germany