Subject: 25.0.50; Buffer is unconditionally marked modified by‘fill-paragraph’

From: Mark Karpov <[email-masked]>
Date: Wed, 29 Jul 2015 13:59:42 +0600

★★★

I've noticed that ‘fill-paragraph’ marks buffer modified even if it
hasn't done anything at all, that is, the paragraph is already
“filled”. I think it's a bit counter-intuitive.

For example, if I want to make sure that a paragraph is filled, I press
‘M-q’ and even if it had no effect I would need to eventually re-save
the file or undo the operation.

This is not a major problem, of course.

                                  ★★★

In GNU Emacs 25.0.50.15 (x86_64-unknown-linux-gnu, GTK+ Version 3.16.5)
 of 2015-07-18 on arch
Repository revision: eed81d277f5f095399611d52b4ff814622d44f1c
Windowing system distributor `The X.Org Foundation', version 11.0.11702000
Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS
NOTIFY ACL GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11

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

Major mode: δ

Minor modes in effect:
  global-git-commit-mode: t
  shell-dirtrack-mode: t
  hl-line-mode: t
  diff-auto-refine-mode: t
  yas-global-mode: t
  yas-minor-mode: t
  show-paren-mode: t
  minibuffer-electric-default-mode: t
  ido-vertical-mode: t
  ido-ubiquitous-mode: t
  ido-everywhere: t
  highlight-line-mode: t
  global-auto-revert-mode: t
  global-aggressive-indent-mode: t
  display-time-mode: t
  delete-selection-mode: t
  ace-popup-menu-mode: t
  smartparens-global-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-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
  auto-fill-mode: 1

Recent messages:
scroll-up-command: End of buffer
Truncate long lines enabled
scroll-up-command: End of buffer
next-line: End of buffer
Saving file /home/mark/projects/programs/megaparsec/Text/MegaParsec/Combinator.hs...
Wrote /home/mark/projects/programs/megaparsec/Text/MegaParsec/Combinator.hs
Saving file /home/mark/projects/programs/megaparsec/Text/MegaParsec/Combinator.hs...
Wrote /home/mark/projects/programs/megaparsec/Text/MegaParsec/Combinator.hs
Quit
Type "q" in help window to restore its previous buffer.

Load-path shadows:
None found.

Features:
(shadow mail-extr eieio-opt speedbar sb-image ezimage dframe emacsbug
sendmail mc-edit-lines multiple-cursors-core rect sort buffer-move
windmove find-dired grep esh-var esh-io esh-cmd esh-opt esh-ext esh-proc
esh-arg esh-groups eshell esh-module esh-mode esh-util dired-x warnings
ediff-merg ediff-wind ediff-diff ediff-mult ediff-help ediff-init
ediff-util ediff epa recentf tree-widget wid-edit derived jka-compr
let-alist ert ewoc debug tar-mode names edebug autoload lisp-mnt
mm-archive network-stream nsm starttls url-http tls url-gw url-cache
url-auth url url-proxy url-privacy url-expand url-methods url-history
url-cookie url-domsuf mailcap url-handlers epg dired-aux wdired
ace-window linum magit-blame magit-stash magit-bisect magit-remote
magit-commit magit-sequence magit magit-log magit-apply magit-wip
magit-diff smerge-mode magit-core magit-process magit-popup magit-mode
magit-git crm magit-section magit-utils git-commit log-edit message
rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231
rfc2047 rfc2045 ietf-drums mailabbrev mail-utils gmm-utils mailheader
pcvs-util add-log with-editor tramp-sh tramp tramp-compat tramp-loaddefs
trampver format-spec ebal vc vc-dispatcher haskell-doc inf-haskell
haskell-decl-scan imenu shell pcomplete haskell haskell-completions
haskell-load haskell-commands highlight-uses-mode haskell-modules
haskell-sandbox haskell-repl haskell-debug haskell-interactive-mode
haskell-presentation-mode haskell-collapse haskell-navigate-imports
haskell-compile haskell-process haskell-session url-util url-parse
auth-source gnus-util mm-util help-fns mail-prsvr password-cache
url-vars json haskell-indent haskell-font-lock smartparens-haskell
haskell-mode haskell-string haskell-sort-imports haskell-lexeme
haskell-align-imports haskell-compat haskell-complete-module noutline
outline flymake etags xref project eieio eieio-core compile comint ring
dabbrev ansi-color hl-line dired vc-git diff-mode bookmark pp
rainbow-delimiters hl-todo flycheck-haskell haskell-cabal haskell-utils
haskell-customize flycheck find-func rx flyspell ispell whitespace
mk-visual solarized-dark-theme solarized mk-texinfo mk-tex mk-python
mk-prolog mk-org mk-markdown mk-man mk-magit mk-lisp mk-ibuffer
mk-haskell mk-gnus mk-eshell mk-erc mk-elisp mk-dired mk-diff mk-clojure
kill-or-bury-alive mk-calendar mk-c mk-bookmark mk-minor-modes
common-lisp-snippets yasnippet cl whole-line-or-region paren
minibuf-eldef ido-vertical-mode ido-ubiquitous ido-completing-read+
cl-macs gv ido highlight-line autorevert filenotify cl-seq
aggressive-indent easy-mmode time delsel ace-popup-menu
smartparens-config smartparens byte-opt thingatpt mk-global edmacro
kmacro ace-link avy misc server mk-utils subr-x f dash s ucs-normalize
finder-inf tex-site fix-word advice slime-autoloads info bytecomp
byte-compile cl-extra help-mode easymenu seq cl-loaddefs pcase cl-lib
cconv package epg-config 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 gfilenotify dynamic-setting system-font-setting
font-render-setting move-toolbar gtk x-toolkit x multi-tty
make-network-process emacs)

Memory information:
((conses 16 488948 129582)
 (symbols 48 45436 0)
 (miscs 40 176 1414)
 (strings 32 97449 57830)
 (string-bytes 1 2837238)
 (vectors 16 69415)
 (vector-slots 8 1878224 125855)
 (floats 8 511 2292)
 (intervals 56 2046 343)
 (buffers 976 41)
 (heap 1024 99641 8164))