* bug#33654: 27.0.50; No record of init file errors printed in *Messages*
@ 2018-12-07 0:42 N. Jackson
2018-12-07 7:13 ` Eli Zaretskii
0 siblings, 1 reply; 9+ messages in thread
From: N. Jackson @ 2018-12-07 0:42 UTC (permalink / raw)
To: 33654
When there is an error in the init file, so that Emacs fails to
start normally, the user is not notified of the problem in the
*Messages* buffer.
Consequently, a user diligently checking *Messages* after Emacs
startup to ensure that there were no problems, will fail to be
informed of an init file error.
Although a warning message is printed in a window, if Desktop
restores many frames, the warning message will probably be buried
and may never be seen. [Perhaps the window with the warning message
should be displayed in the frame that has focus after Desktop
restore is finished?]
In GNU Emacs 27.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.22.30)
of 2018-12-03 built on moondust.localdomain
Repository revision: e02d375cb6670e2306b9c67d7f6fd2dd1d1b2711
Repository branch: master
Windowing system distributor 'Fedora Project', version 11.0.11906000
System Description: Fedora 28 (Workstation Edition)
Configured using:
'configure 'CFLAGS=-O3 -g3 -gdwarf-4''
Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND DBUS GSETTINGS GLIB NOTIFY
INOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM THREADS LCMS2 GMP
Important settings:
value of $LANG: en_CA.UTF-8
value of $XMODIFIERS: @im=none
locale-coding-system: utf-8-unix
Major mode: Text
Minor modes in effect:
TeX-PDF-mode: t
diff-auto-refine-mode: t
flyspell-mode: t
pdf-occur-global-minor-mode: t
shell-dirtrack-mode: t
recentf-mode: t
show-paren-mode: t
savehist-mode: t
save-place-mode: t
electric-pair-mode: t
display-time-mode: t
display-battery-mode: t
desktop-save-mode: t
delete-selection-mode: t
cua-mode: t
tooltip-mode: t
global-eldoc-mode: t
electric-indent-mode: t
mouse-wheel-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
temp-buffer-resize-mode: t
size-indication-mode: t
column-number-mode: t
line-number-mode: t
global-visual-line-mode: t
visual-line-mode: t
transient-mark-mode: t
Load-path shadows:
~/.emacs.d/modules/org-contacts hides /home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-contacts
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-habit hides /data/projects/vc/emacs/git/emacs/lisp/org/org-habit
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-python hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-python
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-clojure hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-clojure
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ox-md hides /data/projects/vc/emacs/git/emacs/lisp/org/ox-md
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-macs hides /data/projects/vc/emacs/git/emacs/lisp/org/org-macs
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-groovy hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-groovy
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ox-odt hides /data/projects/vc/emacs/git/emacs/lisp/org/ox-odt
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ox-texinfo hides /data/projects/vc/emacs/git/emacs/lisp/org/ox-texinfo
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-protocol hides /data/projects/vc/emacs/git/emacs/lisp/org/org-protocol
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-io hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-io
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-list hides /data/projects/vc/emacs/git/emacs/lisp/org/org-list
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-scheme hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-scheme
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob hides /data/projects/vc/emacs/git/emacs/lisp/org/ob
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-docview hides /data/projects/vc/emacs/git/emacs/lisp/org/org-docview
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-latex hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-latex
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ox-html hides /data/projects/vc/emacs/git/emacs/lisp/org/ox-html
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-ctags hides /data/projects/vc/emacs/git/emacs/lisp/org/org-ctags
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-src hides /data/projects/vc/emacs/git/emacs/lisp/org/org-src
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-octave hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-octave
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-w3m hides /data/projects/vc/emacs/git/emacs/lisp/org/org-w3m
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-bibtex hides /data/projects/vc/emacs/git/emacs/lisp/org/org-bibtex
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-eww hides /data/projects/vc/emacs/git/emacs/lisp/org/org-eww
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-info hides /data/projects/vc/emacs/git/emacs/lisp/org/org-info
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-processing hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-processing
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ox-beamer hides /data/projects/vc/emacs/git/emacs/lisp/org/ox-beamer
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-maxima hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-maxima
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-table hides /data/projects/vc/emacs/git/emacs/lisp/org/org-table
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-R hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-R
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ox-publish hides /data/projects/vc/emacs/git/emacs/lisp/org/ox-publish
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-mscgen hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-mscgen
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-keys hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-keys
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-css hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-css
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-haskell hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-haskell
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-picolisp hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-picolisp
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-timer hides /data/projects/vc/emacs/git/emacs/lisp/org/org-timer
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-feed hides /data/projects/vc/emacs/git/emacs/lisp/org/org-feed
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-emacs-lisp hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-emacs-lisp
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-coq hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-coq
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-J hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-J
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-mhe hides /data/projects/vc/emacs/git/emacs/lisp/org/org-mhe
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-exp hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-exp
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-rmail hides /data/projects/vc/emacs/git/emacs/lisp/org/org-rmail
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-attach hides /data/projects/vc/emacs/git/emacs/lisp/org/org-attach
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-lilypond hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-lilypond
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-version hides /data/projects/vc/emacs/git/emacs/lisp/org/org-version
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-makefile hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-makefile
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-sql hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-sql
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-lob hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-lob
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-abc hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-abc
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-java hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-java
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-shell hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-shell
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-loaddefs hides /data/projects/vc/emacs/git/emacs/lisp/org/org-loaddefs
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-element hides /data/projects/vc/emacs/git/emacs/lisp/org/org-element
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-ebnf hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-ebnf
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-id hides /data/projects/vc/emacs/git/emacs/lisp/org/org-id
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-crypt hides /data/projects/vc/emacs/git/emacs/lisp/org/org-crypt
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org hides /data/projects/vc/emacs/git/emacs/lisp/org/org
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-plot hides /data/projects/vc/emacs/git/emacs/lisp/org/org-plot
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-ruby hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-ruby
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-matlab hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-matlab
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-lua hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-lua
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-ditaa hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-ditaa
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-irc hides /data/projects/vc/emacs/git/emacs/lisp/org/org-irc
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-gnus hides /data/projects/vc/emacs/git/emacs/lisp/org/org-gnus
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-C hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-C
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-vala hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-vala
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-lint hides /data/projects/vc/emacs/git/emacs/lisp/org/org-lint
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-comint hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-comint
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-colview hides /data/projects/vc/emacs/git/emacs/lisp/org/org-colview
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-tangle hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-tangle
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-hledger hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-hledger
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-dot hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-dot
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-mobile hides /data/projects/vc/emacs/git/emacs/lisp/org/org-mobile
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-duration hides /data/projects/vc/emacs/git/emacs/lisp/org/org-duration
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-eshell hides /data/projects/vc/emacs/git/emacs/lisp/org/org-eshell
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-sass hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-sass
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-gnuplot hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-gnuplot
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ox-icalendar hides /data/projects/vc/emacs/git/emacs/lisp/org/ox-icalendar
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ox-man hides /data/projects/vc/emacs/git/emacs/lisp/org/ox-man
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-capture hides /data/projects/vc/emacs/git/emacs/lisp/org/org-capture
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-plantuml hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-plantuml
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-footnote hides /data/projects/vc/emacs/git/emacs/lisp/org/org-footnote
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-sed hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-sed
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-clock hides /data/projects/vc/emacs/git/emacs/lisp/org/org-clock
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-js hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-js
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ox-latex hides /data/projects/vc/emacs/git/emacs/lisp/org/ox-latex
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ox-ascii hides /data/projects/vc/emacs/git/emacs/lisp/org/ox-ascii
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-ref hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-ref
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-stan hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-stan
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-ocaml hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-ocaml
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-agenda hides /data/projects/vc/emacs/git/emacs/lisp/org/org-agenda
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-indent hides /data/projects/vc/emacs/git/emacs/lisp/org/org-indent
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-core hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-core
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-pcomplete hides /data/projects/vc/emacs/git/emacs/lisp/org/org-pcomplete
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-datetree hides /data/projects/vc/emacs/git/emacs/lisp/org/org-datetree
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-ledger hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-ledger
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-shen hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-shen
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-entities hides /data/projects/vc/emacs/git/emacs/lisp/org/org-entities
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-macro hides /data/projects/vc/emacs/git/emacs/lisp/org/org-macro
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-forth hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-forth
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-mouse hides /data/projects/vc/emacs/git/emacs/lisp/org/org-mouse
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-sqlite hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-sqlite
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ox-org hides /data/projects/vc/emacs/git/emacs/lisp/org/ox-org
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-screen hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-screen
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-asymptote hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-asymptote
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-eval hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-eval
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-archive hides /data/projects/vc/emacs/git/emacs/lisp/org/org-archive
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ox hides /data/projects/vc/emacs/git/emacs/lisp/org/ox
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-org hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-org
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-perl hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-perl
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-faces hides /data/projects/vc/emacs/git/emacs/lisp/org/org-faces
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-bbdb hides /data/projects/vc/emacs/git/emacs/lisp/org/org-bbdb
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-compat hides /data/projects/vc/emacs/git/emacs/lisp/org/org-compat
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-lisp hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-lisp
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-install hides /data/projects/vc/emacs/git/emacs/lisp/org/org-install
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-awk hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-awk
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-calc hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-calc
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/org-inlinetask hides /data/projects/vc/emacs/git/emacs/lisp/org/org-inlinetask
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-table hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-table
/home/nlj/.emacs.d/elpa/org-plus-contrib-20181203/ob-fortran hides /data/projects/vc/emacs/git/emacs/lisp/org/ob-fortran
Features:
(shadow sort bbdb-message emacsbug sendmail gnus-async qp mail-extr
gnus-ml disp-table hl-line nndraft nnmh utf-7 gnutls epa-file
network-stream nsm nnfolder bbdb-gnus nnnil gnus-agent gnus-srvr
gnus-score score-mode nnvirtual gnus-msg gnus-art mm-uu mml2015 mm-view
mml-smime smime dig mailcap nntp gnus-cache eieio-opt speedbar sb-image
ezimage dframe help-fns radix-tree misearch multi-isearch dired-aux
preview prv-emacs tex-buf font-latex latex latex-flymake flymake-proc
flymake warnings thingatpt tex-ispell tex-style tex dbus xml tex-mode
sh-script smie executable org-duration cc-mode cc-fonts cc-guess
cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs org-eldoc
org-w3m org-rmail org-mhe org-irc org-info org-habit org-gnus nnir
gnus-sum gnus-group gnus-undo gnus-start gnus-cloud nnimap nnmail
mail-source utf7 netrc nnoo parse-time gnus-spec gnus-int gnus-range
message rmc puny rfc822 mml mml-sec epa mm-decode mm-bodies mm-encode
mail-parse rfc2231 gmm-utils mailheader gnus-win gnus nnheader gnus-util
rmail rmail-loaddefs rfc2047 rfc2045 ietf-drums mail-utils mm-util
mail-prsvr org-docview doc-view org-bibtex bibtex org-bbdb vc-git
diff-mode display-line-numbers flyspell ispell mines cookie1 gamegrid
pdf-occur ibuf-ext ibuffer ibuffer-loaddefs 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 dired-x dired dired-loaddefs pdf-isearch
pdf-misc imenu pdf-tools compile cus-edit pdf-view bookmark pp jka-compr
pdf-cache pdf-info tq pdf-util image-mode org-agenda org-element
avl-tree generator org advice org-macro org-footnote org-pcomplete
org-list org-faces org-entities time-date noutline outline easy-mmode
org-version ob-shell shell pcomplete ob-R ob-python ob-plantuml ob-org
ob-gnuplot ob-ditaa ob-calc calc-store calc-trail calc-ext calc
calc-loaddefs calc-macs ob-awk ob-dot ob-maxima ob-latex 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 bbdb-mua bbdb-anniv diary-lib diary-loaddefs
cal-menu calendar cal-loaddefs bbdb-com crm mailabbrev bbdb bbdb-site
timezone ido edmacro kmacro recentf tree-widget wid-edit
wheatgrass-theme paren savehist saveplace elec-pair time battery desktop
frameset delsel cua-base cus-start cus-load mule-util tex-site
ess-generics info finder-inf package let-alist derived pcase cl-extra
help-mode easymenu url-handlers url-parse auth-source cl-seq eieio
eieio-core cl-macs eieio-loaddefs password-cache json map url-vars seq
byte-opt gv bytecomp byte-compile cconv epg epg-config subr-x
cl-loaddefs cl-lib tooltip eldoc electric uniquify ediff-hook vc-hooks
lisp-float-type 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 elisp-mode lisp-mode prog-mode register page menu-bar
rfn-eshadow isearch timer select scroll-bar mouse jit-lock font-lock
syntax facemenu font-core term/tty-colors 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 composite charscript charprop
case-table epa-hook jka-cmpr-hook help simple abbrev obarray 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 threads dbusbind
inotify lcms2 dynamic-setting system-font-setting font-render-setting
move-toolbar gtk x-toolkit x multi-tty make-network-process emacs)
Memory information:
((conses 16 647782 84358)
(symbols 48 114718 2)
(strings 32 189555 9248)
(string-bytes 1 6213752)
(vectors 16 85611)
(vector-slots 8 2041075 211030)
(floats 8 516 959)
(intervals 56 9931 141)
(buffers 992 76))
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#33654: 27.0.50; No record of init file errors printed in *Messages*
2018-12-07 0:42 bug#33654: 27.0.50; No record of init file errors printed in *Messages* N. Jackson
@ 2018-12-07 7:13 ` Eli Zaretskii
2018-12-07 17:08 ` N. Jackson
0 siblings, 1 reply; 9+ messages in thread
From: Eli Zaretskii @ 2018-12-07 7:13 UTC (permalink / raw)
To: N. Jackson; +Cc: 33654
> From: "N. Jackson" <nljlistbox2@gmail.com>
> Date: Thu, 06 Dec 2018 19:42:05 -0500
>
> When there is an error in the init file, so that Emacs fails to
> start normally, the user is not notified of the problem in the
> *Messages* buffer.
Generally, that happens when we cannot safely display anything, nor
even insert text into *Messages*, if problems occur early enough into
the startup process, because the necessary infrastructure is not yet
available. But we do try our best, see below. So your report, which
sounds as if there's a general non-display of any error or warning
messages in this case, is inaccurate. Please be more specific
regarding the particular problems you saw that didn't get logged.
> Consequently, a user diligently checking *Messages* after Emacs
> startup to ensure that there were no problems, will fail to be
> informed of an init file error.
Such errors are generally displayed right away, after interrupting the
initialization process. So I wonder what specific example do you have
in mind.
> Although a warning message is printed in a window, if Desktop
> restores many frames, the warning message will probably be buried
> and may never be seen. [Perhaps the window with the warning message
> should be displayed in the frame that has focus after Desktop
> restore is finished?]
Are you talking about errors or warnings? And did you include the
*Warnings* buffer in your review? That's where we put delayed
warnings from the initialization process. More generally, did you
read up on the "delayed warnings" machinery?
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#33654: 27.0.50; No record of init file errors printed in *Messages*
2018-12-07 7:13 ` Eli Zaretskii
@ 2018-12-07 17:08 ` N. Jackson
2018-12-08 10:46 ` Eli Zaretskii
0 siblings, 1 reply; 9+ messages in thread
From: N. Jackson @ 2018-12-07 17:08 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: 33654
Hello Eli,
At 09:13 +0200 on Friday 2018-12-07, Eli Zaretskii wrote:
>> From: "N. Jackson" <nljlistbox2@gmail.com>
>> Date: Thu, 06 Dec 2018 19:42:05 -0500
>>
>> When there is an error in the init file, so that Emacs fails to
>> start normally, the user is not notified of the problem in the
>> *Messages* buffer.
>
> Generally, that happens when we cannot safely display anything,
> nor even insert text into *Messages*, if problems occur early
> enough into the startup process, because the necessary
> infrastructure is not yet available. But we do try our best, see
> below. So your report, which sounds as if there's a general
> non-display of any error or warning messages in this case, is
> inaccurate.
Yes, you are quite right. Sorry for the rather sweeping statement, I
was trying to characterise the problem I saw. I've typically been
happy with the information I've had from Emacs when I've had errors
in my init files, and I think that was why I was surprised when I
was (in my opinion) inadequately informed in this case.
I though something might have changed, but perhaps the specific
circumstances were different from the errors I've had in the past.
> Please be more specific regarding the particular problems you saw
> that didn't get logged.
Please see below.
> Such errors are generally displayed right away, after interrupting
> the initialization process. So I wonder what specific example do
> you have in mind.
Please see below.
> Are you talking about errors or warnings? And did you include the
> *Warnings* buffer in your review? That's where we put delayed
> warnings from the initialization process. More generally, did you
> read up on the "delayed warnings" machinery?
No, I've not read that documentation recently -- I'll add it to my
reading list. Yes there was a *Warnings* buffer, but it was in a
window on a frame I didn't visit. I did not know that I needed to
check both *Messages* and *Warnings*.
I think, perhaps, that if something were written to *Messages* to inform
the user that there was a warning/error, and to direct them to the
*Warnings* buffer for details, it would make it less likely that the
user would miss the information altogether. Something like
An initialization error occurred -- see *Warnings* buffer for details.
Also, the frame that was split to display the *Warnings* buffer was not
the one that had the focus when Emacs finished starting up. (Indeed, I
think it might have been on the most deeply buried frame.) There is a
very high probability I would never see a warning/error displayed so
obscurely.
It would seem that it would be better, if it were feasible, if the
*Warnings* buffer could be displayed in a window on the frame that
has the focus after Emacs finishes starting up.
DETAILS
Here is a detailed example of the problem. I think this might have
really happened to me in real life (resulting in Bug##33536 [1]).
Scenario: I have a notion that it would be a good idea to remove and
then re-install an Emacs package. I decide that to be sure that none of
it still hanging around in memory, I should exit an restart Emacs
between removing the package and reinstalling it. The package in this
case happens to be bbdb from Gnu Elpa. I have
(bbdb-initialize 'gnus 'message)
in my init file.
When Emacs starts after bbdb has been uninstalled, the above line
results in an error. A *Warnings* buffer is displayed as follows:
Warning (initialization): An error occurred while loading `/home/nlj/.emacs':
Symbol's function definition is void: bbdb-initialize
To ensure normal operation, you should investigate and remove the
cause of the error in your initialization file. Start Emacs with
the `--debug-init' option to view a complete error backtrace.
But I don't see this error/warning message because I don't visit the
frame on which it is displayed. After all, it's just going to be a short
Emacs session during which all I'm going to do is install bbdb.
In my *Messages* buffer is displayed:
Loading cua-base...done
Loading delsel...done
Loading desktop...done
Loading battery...done
Loading time...done
Loading elec-pair...done
Loading saveplace...done
Loading savehist...done
Loading paren...done
Loading /home/nlj/.recentf...done
Cleaning up the recentf list...done (0 removed)
Starting new Ispell process /usr/bin/aspell with default dictionary...
Loading dired-x...done
Setting up indent for shell type sh
Indentation variables are now local.
Indentation setup for shell type sh
Ispell process killed
Starting new Ispell process /usr/bin/aspell with default dictionary...
Setting up indent for shell type sh
Indentation variables are now local.
Indentation setup for shell type sh
Omitting...
Omitted 384 lines.
uncompressing de.map.gz...done
Wrote /data/projects/vc/emacs/git/emacs/.emacs.desktop.lock
Desktop: 7 frames, 54 buffers restored.
For information about GNU Emacs and the GNU system, type C-h C-a.
This shows no indication of the initialization error.
Now it might be a user error to look for an indication of start up
problems only in *Messages*, and it might a user error to miss the
*Warnings* buffer, but I think it would improve Emacs, were it feasible,
if it helped the user to avoid these mistakes by mentioning the
error/warning in *Messages*, and by displaying the *Warnings* buffer in
a frame that isn't buried.
[1] https://debbugs.gnu.org/cgi/bugreport.cgi?bug=33536
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#33654: 27.0.50; No record of init file errors printed in *Messages*
2018-12-07 17:08 ` N. Jackson
@ 2018-12-08 10:46 ` Eli Zaretskii
2018-12-08 18:51 ` martin rudalics
0 siblings, 1 reply; 9+ messages in thread
From: Eli Zaretskii @ 2018-12-08 10:46 UTC (permalink / raw)
To: N. Jackson, martin rudalics; +Cc: 33654
> From: "N. Jackson" <nljlistbox2@gmail.com>
> Cc: 33654@debbugs.gnu.org
> Date: Fri, 07 Dec 2018 12:08:33 -0500
>
> I think, perhaps, that if something were written to *Messages* to inform
> the user that there was a warning/error, and to direct them to the
> *Warnings* buffer for details, it would make it less likely that the
> user would miss the information altogether. Something like
>
> An initialization error occurred -- see *Warnings* buffer for details.
Don't we already use the echo area to show the error itself?
> Also, the frame that was split to display the *Warnings* buffer was not
> the one that had the focus when Emacs finished starting up. (Indeed, I
> think it might have been on the most deeply buried frame.) There is a
> very high probability I would never see a warning/error displayed so
> obscurely.
>
> It would seem that it would be better, if it were feasible, if the
> *Warnings* buffer could be displayed in a window on the frame that
> has the focus after Emacs finishes starting up.
>
>
> DETAILS
>
> Here is a detailed example of the problem. I think this might have
> really happened to me in real life (resulting in Bug##33536 [1]).
>
> Scenario: I have a notion that it would be a good idea to remove and
> then re-install an Emacs package. I decide that to be sure that none of
> it still hanging around in memory, I should exit an restart Emacs
> between removing the package and reinstalling it. The package in this
> case happens to be bbdb from Gnu Elpa. I have
>
> (bbdb-initialize 'gnus 'message)
>
> in my init file.
>
> When Emacs starts after bbdb has been uninstalled, the above line
> results in an error. A *Warnings* buffer is displayed as follows:
>
> Warning (initialization): An error occurred while loading `/home/nlj/.emacs':
>
> Symbol's function definition is void: bbdb-initialize
>
> To ensure normal operation, you should investigate and remove the
> cause of the error in your initialization file. Start Emacs with
> the `--debug-init' option to view a complete error backtrace.
>
> But I don't see this error/warning message because I don't visit the
> frame on which it is displayed. After all, it's just going to be a short
> Emacs session during which all I'm going to do is install bbdb.
I'm not sure we can guarantee that the frame showing *Warnings* is
always on top, since user initialization can create any number of
frames. Maybe Martin has some tricks up his sleeves?
> In my *Messages* buffer is displayed:
>
> Loading cua-base...done
> Loading delsel...done
> Loading desktop...done
> Loading battery...done
> Loading time...done
> Loading elec-pair...done
> Loading saveplace...done
> Loading savehist...done
> Loading paren...done
> Loading /home/nlj/.recentf...done
> Cleaning up the recentf list...done (0 removed)
> Starting new Ispell process /usr/bin/aspell with default dictionary...
> Loading dired-x...done
> Setting up indent for shell type sh
> Indentation variables are now local.
> Indentation setup for shell type sh
> Ispell process killed
> Starting new Ispell process /usr/bin/aspell with default dictionary...
> Setting up indent for shell type sh
> Indentation variables are now local.
> Indentation setup for shell type sh
> Omitting...
> Omitted 384 lines.
> uncompressing de.map.gz...done
> Wrote /data/projects/vc/emacs/git/emacs/.emacs.desktop.lock
> Desktop: 7 frames, 54 buffers restored.
> For information about GNU Emacs and the GNU system, type C-h C-a.
>
> This shows no indication of the initialization error.
Delayed warnings are not written to *Messages*, they are written to
*Warnings* instead. This is so they don't get discarded if *Messages*
gets too long. You just need to become accustomed to look in
*Warnings* as you are already accustomed to look in *Messages* (which
by default is not shown in any window, right?).
> Now it might be a user error to look for an indication of start up
> problems only in *Messages*, and it might a user error to miss the
> *Warnings* buffer, but I think it would improve Emacs, were it feasible,
> if it helped the user to avoid these mistakes by mentioning the
> error/warning in *Messages*, and by displaying the *Warnings* buffer in
> a frame that isn't buried.
Mentioning that in *Messages* is problematic, as it could disappear
without a trace. I think.
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#33654: 27.0.50; No record of init file errors printed in *Messages*
2018-12-08 10:46 ` Eli Zaretskii
@ 2018-12-08 18:51 ` martin rudalics
2018-12-08 19:24 ` Eli Zaretskii
0 siblings, 1 reply; 9+ messages in thread
From: martin rudalics @ 2018-12-08 18:51 UTC (permalink / raw)
To: Eli Zaretskii, N. Jackson; +Cc: 33654
> I'm not sure we can guarantee that the frame showing *Warnings* is
> always on top, since user initialization can create any number of
> frames.
In general we cannot guarantee that for any frame when there are
several of them. Usually, the last frame created is the one on top.
A user could add a function to 'window-setup-hook' which looks whether
a *Warnings* buffer exists and, if it is not shown on the selected
frame, display it there and maybe delete it elsewhere. Or, obviously,
select the frame where it is shown. I don't know whether it's a good
idea to do that automatically.
martin
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#33654: 27.0.50; No record of init file errors printed in *Messages*
2018-12-08 18:51 ` martin rudalics
@ 2018-12-08 19:24 ` Eli Zaretskii
2018-12-09 8:26 ` martin rudalics
0 siblings, 1 reply; 9+ messages in thread
From: Eli Zaretskii @ 2018-12-08 19:24 UTC (permalink / raw)
To: martin rudalics; +Cc: nljlistbox2, 33654
> Date: Sat, 08 Dec 2018 19:51:47 +0100
> From: martin rudalics <rudalics@gmx.at>
> CC: 33654@debbugs.gnu.org
>
> > I'm not sure we can guarantee that the frame showing *Warnings* is
> > always on top, since user initialization can create any number of
> > frames.
>
> In general we cannot guarantee that for any frame when there are
> several of them. Usually, the last frame created is the one on top.
>
> A user could add a function to 'window-setup-hook' which looks whether
> a *Warnings* buffer exists and, if it is not shown on the selected
> frame, display it there and maybe delete it elsewhere. Or, obviously,
> select the frame where it is shown. I don't know whether it's a good
> idea to do that automatically.
Maybe we could add something to window-setup-hook when we have delayed
warnings to display after startup?
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#33654: 27.0.50; No record of init file errors printed in *Messages*
2018-12-08 19:24 ` Eli Zaretskii
@ 2018-12-09 8:26 ` martin rudalics
2020-10-11 1:54 ` Lars Ingebrigtsen
0 siblings, 1 reply; 9+ messages in thread
From: martin rudalics @ 2018-12-09 8:26 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: nljlistbox2, 33654
[-- Attachment #1: Type: text/plain, Size: 564 bytes --]
> Maybe we could add something to window-setup-hook when we have delayed
> warnings to display after startup?
I'd leave 'window-setup-hook' alone and do something similar to the
attached patch. We could also try "(reusable-frames . visible)" there
which should put any frame already showing *Warnings* on top of the
others (at least here it does that), but not all window managers out
there might comply.
Here I neither use desktop nor multiple frames. So please test the
patch with the originally posted desktop saved multiple frames setup.
Thanks, martin
[-- Attachment #2: startup.el.diff --]
[-- Type: text/plain, Size: 1403 bytes --]
diff --git a/lisp/startup.el b/lisp/startup.el
index a7b40b7..ad19934 100644
--- a/lisp/startup.el
+++ b/lisp/startup.el
@@ -708,7 +708,12 @@ normal-top-level
(if (fboundp 'font-menu-add-default)
(font-menu-add-default))
(unless inhibit-startup-hooks
- (run-hooks 'window-setup-hook))))
+ ;; Display *Warnings* on selected frame if they happen to be
+ ;; shown elsewhere.
+ (let ((buffer (get-buffer "*Warnings*")))
+ (when (buffer-live-p buffer)
+ (display-buffer buffer '(nil (reusable-frames . nil)))))
+ (run-hooks 'window-setup-hook))))
;; Subprocesses of Emacs do not have direct access to the terminal, so
;; unless told otherwise they should only assume a dumb terminal.
;; We are careful to do it late (after term-setup-hook), although the
@@ -2584,6 +2589,12 @@ command-line-1
(when (fboundp 'frame-notice-user-settings)
(frame-notice-user-settings))
+ ;; Display *Warnings* on selected frame if they happen to be
+ ;; shown elsewhere.
+ (let ((buffer (get-buffer "*Warnings*")))
+ (when (buffer-live-p buffer)
+ (display-buffer buffer '(nil (reusable-frames . nil)))))
+
;; If there are no switches to process, we might as well
;; run this hook now, and there may be some need to do it
;; before doing any output.
^ permalink raw reply related [flat|nested] 9+ messages in thread
* bug#33654: 27.0.50; No record of init file errors printed in *Messages*
2018-12-09 8:26 ` martin rudalics
@ 2020-10-11 1:54 ` Lars Ingebrigtsen
2021-05-11 13:49 ` Lars Ingebrigtsen
0 siblings, 1 reply; 9+ messages in thread
From: Lars Ingebrigtsen @ 2020-10-11 1:54 UTC (permalink / raw)
To: nljlistbox2; +Cc: 33654
martin rudalics <rudalics@gmx.at> writes:
> Here I neither use desktop nor multiple frames. So please test the
> patch with the originally posted desktop saved multiple frames setup.
>
[...]
> + ;; Display *Warnings* on selected frame if they happen to be
> + ;; shown elsewhere.
> + (let ((buffer (get-buffer "*Warnings*")))
> + (when (buffer-live-p buffer)
> + (display-buffer buffer '(nil (reusable-frames . nil)))))
Did you try this patch?
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#33654: 27.0.50; No record of init file errors printed in *Messages*
2020-10-11 1:54 ` Lars Ingebrigtsen
@ 2021-05-11 13:49 ` Lars Ingebrigtsen
0 siblings, 0 replies; 9+ messages in thread
From: Lars Ingebrigtsen @ 2021-05-11 13:49 UTC (permalink / raw)
To: nljlistbox2; +Cc: 33654
Lars Ingebrigtsen <larsi@gnus.org> writes:
> martin rudalics <rudalics@gmx.at> writes:
>
>> Here I neither use desktop nor multiple frames. So please test the
>> patch with the originally posted desktop saved multiple frames setup.
>>
>
> [...]
>
>> + ;; Display *Warnings* on selected frame if they happen to be
>> + ;; shown elsewhere.
>> + (let ((buffer (get-buffer "*Warnings*")))
>> + (when (buffer-live-p buffer)
>> + (display-buffer buffer '(nil (reusable-frames . nil)))))
>
> Did you try this patch?
More information was requested, but no response was given within a few
months, so I'm closing this bug report. If the problem still exists,
please respond to this email and we'll reopen the bug report.
(The patch in question no longer applies cleanly, but it could be respun
easily enough. But without a test case, it's hard to tell whether it
improves the situation or not, so it sounds unlikely that there'll be
more progress here.)
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2021-05-11 13:49 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-12-07 0:42 bug#33654: 27.0.50; No record of init file errors printed in *Messages* N. Jackson
2018-12-07 7:13 ` Eli Zaretskii
2018-12-07 17:08 ` N. Jackson
2018-12-08 10:46 ` Eli Zaretskii
2018-12-08 18:51 ` martin rudalics
2018-12-08 19:24 ` Eli Zaretskii
2018-12-09 8:26 ` martin rudalics
2020-10-11 1:54 ` Lars Ingebrigtsen
2021-05-11 13:49 ` 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).