Package: emacs;
Reported by: Benjamin Peterson <benjamin <at> python.org>
Date: Wed, 23 Sep 2009 02:10:05 UTC
Severity: normal
Merged with 13256
Found in version 24.1
Done: Chong Yidong <cyd <at> gnu.org>
Bug is archived. No further changes may be made.
View this message in rfc822 format
From: help-debbugs <at> gnu.org (GNU bug Tracking System) To: Chong Yidong <cyd <at> gnu.org> Cc: tracker <at> debbugs.gnu.org Subject: bug#13256: closed (24.1; auto-revert does not re-check encoding) Date: Sun, 10 Feb 2013 03:11:08 +0000
[Message part 1 (text/plain, inline)]
Your message dated Sun, 10 Feb 2013 11:09:51 +0800 with message-id <87zjzc3lvk.fsf <at> gnu.org> and subject line Re: bug#4533: 23.1: reverting fails to update line ending mode line has caused the debbugs.gnu.org bug report #4533, regarding 24.1; auto-revert does not re-check encoding to be marked as done. (If you believe you have received this mail in error, please contact help-debbugs <at> gnu.org.) -- 4533: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=4533 GNU Bug Tracking System Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Reuben Thomas <rrt <at> sc3d.org> To: bug-gnu-emacs <at> gnu.org Subject: 24.1; auto-revert does not re-check encoding Date: Sat, 22 Dec 2012 23:57:33 +0000I use auto-revert-mode. If I run e.g. dos2unix on a buffer I'm editing, it is reverted, but Emacs does not notice that the line ending encoding has changed. Hence, continuing to edit and re-saving will undo the unix2dos command. In GNU Emacs 24.1.1 (x86_64-pc-linux-gnu, GTK+ Version 2.24.12) of 2012-09-22 on batsu, modified by Debian Windowing system distributor `The X.Org Foundation', version 11.0.11300000 Configured using: `configure '--build' 'x86_64-linux-gnu' '--build' 'x86_64-linux-gnu' '--prefix=/usr' '--sharedstatedir=/var/lib' '--libexecdir=/usr/lib' '--localstatedir=/var/lib' '--infodir=/usr/share/info' '--mandir=/usr/share/man' '--with-pop=yes' '--enable-locallisppath=/etc/emacs24:/etc/emacs:/usr/local/share/emacs/24.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/24.1/site-lisp:/usr/share/emacs/site-lisp' '--with-crt-dir=/usr/lib/x86_64-linux-gnu' '--with-x=yes' '--with-x-toolkit=gtk' '--with-toolkit-scroll-bars' 'build_alias=x86_64-linux-gnu' 'CFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -O2' 'CPPFLAGS=-D_FORTIFY_SOURCE=2'' Important settings: value of $LC_ALL: nil value of $LC_COLLATE: nil value of $LC_CTYPE: nil value of $LC_MESSAGES: nil value of $LC_MONETARY: en_GB.UTF-8 value of $LC_NUMERIC: en_GB.UTF-8 value of $LC_TIME: en_GB.UTF-8 value of $LANG: en_GB.UTF-8 value of $XMODIFIERS: @im=none locale-coding-system: utf-8-unix default enable-multibyte-characters: t Major mode: Text Minor modes in effect: diff-auto-refine-mode: t TeX-PDF-mode: t shell-dirtrack-mode: t buffer-face-mode: t flyspell-mode: t smart-quotes-mode: t recentf-mode: t show-paren-mode: t server-mode: t savehist-mode: t minibuffer-electric-default-mode: t iswitchb-mode: t icomplete-mode: t global-auto-revert-mode: t desktop-save-mode: t tooltip-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 column-number-mode: t line-number-mode: t transient-mark-mode: t Recent input: <backspace> C-x C-s C-c C-c <return> M-< C-s e d l a b e l C-a C-s b a r e l y <right> <left> <left> <left> <left> <left> C-s C-s C-s C-s C-s C-s C-s C-s C-s C-s <right> <left> <M-backspace> i s SPC b u t M-d <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <left> <left> <left> <left> <left> a n d SPC t h i r t y <backspace> y - s i x SPC C-x C-s C-c C-c <return> C-s p u n SPC o n SPC C-a <down> <down> <down> <down> <down> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> ) C-x C-s C-c C-c <return> <help-echo> <help-echo> C-x C-f ~ / N o t e <tab> T h i n g <tab> L e <tab> <return> C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n I r i a : S-SPC A – Z . <backspace> <return> C-x C-s <up> <up> <up> <up> <up> <up> <right> <right> <right> <right> <up> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <right> <M-backspace> <M-backspace> C-x C-s <left> <left> <backspace> <backspace> <backspace> G r a m p s C-x C-s C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-x k <return> C-x C-f <up> <return> M-> M-< M-> M-x r e p o r t b u <backspace> <backspace> - e m a c s - b u g <ret urn> Recent messages: byte-code: End of buffer [27 times] Saving file /home/rrt/Notes/Things Lent... Wrote /home/rrt/Notes/Things Lent Saving file /home/rrt/Notes/Things Lent... Wrote /home/rrt/Notes/Things Lent Saving file /home/rrt/Notes/Things Lent... Wrote /home/rrt/Notes/Things Lent Reverting buffer `Things Lent'. byte-code: End of buffer [10 times] Mark set [3 times] Load-path shadows: /home/rrt/local/share/emacs/site-lisp/dict hides /usr/share/emacs24/site-lisp/emacs-goodies-el/dict /home/rrt/local/share/emacs/site-lisp/browse-kill-ring hides /usr/share/emacs24/site-lisp/emacs-goodies-el/browse-kill-ring /home/rrt/.emacs.d/elpa/dictionary-1.8.7/link hides /usr/share/emacs24/site-lisp/dictionary-el/link /home/rrt/.emacs.d/elpa/dictionary-1.8.7/dictionary hides /usr/share/emacs24/site-lisp/dictionary-el/dictionary /home/rrt/.emacs.d/elpa/dictionary-1.8.7/dictionary-init hides /usr/share/emacs24/site-lisp/dictionary-el/dictionary-init /home/rrt/.emacs.d/elpa/dictionary-1.8.7/connection hides /usr/share/emacs24/site-lisp/dictionary-el/connection /usr/share/emacs24/site-lisp/auctex/multi-prompt hides /usr/share/emacs/site-lisp/auctex/multi-prompt /usr/share/emacs24/site-lisp/auctex/latex hides /usr/share/emacs/site-lisp/auctex/latex /usr/share/emacs24/site-lisp/auctex/texmathp hides /usr/share/emacs/site-lisp/auctex/texmathp /usr/share/emacs24/site-lisp/auctex/tex-fold hides /usr/share/emacs/site-lisp/auctex/tex-fold /usr/share/emacs24/site-lisp/auctex/tex-jp hides /usr/share/emacs/site-lisp/auctex/tex-jp /usr/share/emacs24/site-lisp/auctex/preview hides /usr/share/emacs/site-lisp/auctex/preview /usr/share/emacs24/site-lisp/auctex/tex-bar hides /usr/share/emacs/site-lisp/auctex/tex-bar /usr/share/emacs24/site-lisp/auctex/tex-mik hides /usr/share/emacs/site-lisp/auctex/tex-mik /usr/share/emacs24/site-lisp/auctex/toolbar-x hides /usr/share/emacs/site-lisp/auctex/toolbar-x /usr/share/emacs24/site-lisp/auctex/tex hides /usr/share/emacs/site-lisp/auctex/tex /usr/share/emacs24/site-lisp/auctex/prv-emacs hides /usr/share/emacs/site-lisp/auctex/prv-emacs /usr/share/emacs24/site-lisp/auctex/context hides /usr/share/emacs/site-lisp/auctex/context /usr/share/emacs24/site-lisp/auctex/tex-info hides /usr/share/emacs/site-lisp/auctex/tex-info /usr/share/emacs24/site-lisp/auctex/tex-font hides /usr/share/emacs/site-lisp/auctex/tex-font /usr/share/emacs24/site-lisp/auctex/tex-style hides /usr/share/emacs/site-lisp/auctex/tex-style /usr/share/emacs24/site-lisp/auctex/bib-cite hides /usr/share/emacs/site-lisp/auctex/bib-cite /usr/share/emacs24/site-lisp/auctex/font-latex hides /usr/share/emacs/site-lisp/auctex/font-latex /usr/share/emacs24/site-lisp/auctex/context-nl hides /usr/share/emacs/site-lisp/auctex/context-nl /usr/share/emacs24/site-lisp/auctex/plain-tex hides /usr/share/emacs/site-lisp/auctex/plain-tex /usr/share/emacs24/site-lisp/auctex/context-en hides /usr/share/emacs/site-lisp/auctex/context-en /usr/share/emacs24/site-lisp/auctex/tex-buf hides /usr/share/emacs/site-lisp/auctex/tex-buf /usr/share/emacs/site-lisp/golang-mode/go-mode-load hides /usr/share/emacs/24.1/site-lisp/golang-mode/go-mode-load /usr/share/emacs/site-lisp/golang-mode/go-mode hides /usr/share/emacs/24.1/site-lisp/golang-mode/go-mode /usr/share/emacs/24.1/site-lisp/cmake-data/cmake-mode hides /usr/share/emacs/site-lisp/cmake-mode /usr/share/emacs24/site-lisp/dictionaries-common/ispell hides /usr/share/emacs/24.1/lisp/textmodes/ispell /usr/share/emacs24/site-lisp/dictionaries-common/flyspell hides /usr/share/emacs/24.1/lisp/textmodes/flyspell /usr/share/emacs/site-lisp/rst hides /usr/share/emacs/24.1/lisp/textmodes/rst Features: (shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils thai-util thai-word mule-util lao-util js json imenu sgml-mode locate thingatpt browse-url doc-view jka-compr image-mode dired ps-mode diff-git diff-mode log-edit pcvs-util add-log vc ediff-merg ediff-diff ediff-wind ediff-help ediff-util ediff-mult ediff-init ediff vc-dispatcher texmathp preview prv-emacs warnings tex-buf noutline outline font-latex byte-opt bytecomp byte-compile cconv macroexp latex tex-style tex dbus xml latexenc sh-script executable shell pcomplete grep etags newcomment multi-isearch help-mode view nroff-mode autoconf autoconf-mode inform-mode make-mode cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs flymake compile comint ansi-color ring vc-git face-remap regexp-opt flyspell ispell smart-quotes cperl-mode auto-dictionary-autoloads c-eldoc-autoloads dictionary-autoloads diff-git-autoloads dired-isearch-autoloads full-ack-autoloads guess-style-autoloads kill-ring-search-autoloads magit-autoloads mv-shell-autoloads tumble-autoloads http-post-simple-autoloads package tabulated-list completing-help recentf tree-widget wid-edit uniquify paren server savehist minibuf-eldef iswitchb icomplete autorevert desktop cus-start cus-load ropemacs pymacs user-site-loaddefs advice advice-preload yasnippet help-fns derived edmacro kmacro easymenu assoc cl go-mode-load emacs-goodies-el emacs-goodies-custom emacs-goodies-loaddefs easy-mmode preview-latex tex-site auto-loads time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image fringe lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs button faces cus-face files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process dbusbind dynamic-setting system-font-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty emacs) -- http://rrt.sc3d.org/
[Message part 3 (message/rfc822, inline)]
From: Chong Yidong <cyd <at> gnu.org> To: Stefan Monnier <monnier <at> iro.umontreal.ca> Cc: Kenichi Handa <handa <at> m17n.org>, 4533-done <at> debbugs.gnu.org Subject: Re: bug#4533: 23.1: reverting fails to update line ending mode line Date: Sun, 10 Feb 2013 11:09:51 +0800Chong Yidong <cyd <at> stupidchicken.com> writes: >> So maybe the problem is that C-x C-s should not set >> buffer-file-coding-system-explicit (unless the C-x C-s prompted the user >> to choose a coding-system, I guess). > > I see. The comments in mule.el say that > > ;; This variable is set in these three cases: > ;; (1) A file is read by a coding system specified explicitly. > ;; after-insert-file-set-coding sets the car of this value to > ;; coding-system-for-read, and sets the cdr to nil. > ;; (2) A buffer is saved. > ;; After writing, basic-save-buffer-1 sets the car of this value > ;; to last-coding-system-used. > ;; (3) set-buffer-file-coding-system is called. > ;; The cdr of this value is set to the specified coding system. > ;; This variable is used for decoding in revert-buffer and encoding in > ;; select-safe-coding-system. > > Indeed, this seems to imply that (2) can be omitted, as you suggest, > since "force selecting" a coding system should trigger (1) and (3). Is > there any reason that (2) was originally included? Since there's been no response, and my testing showed no ill effects to this change, I went ahead and committed it in the trunk. Let's see how it shakes out.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.