unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#45016: 26.3; when in ediff-current-file, 'D' (view diff) shows empty diff
@ 2020-12-02 20:52 Guilhem Bichot
  2020-12-03 11:19 ` bug#45016: additional information Guilhem Bichot
  2021-01-23 23:27 ` bug#45016: 26.3; when in ediff-current-file, 'D' (view diff) shows empty diff Lars Ingebrigtsen
  0 siblings, 2 replies; 4+ messages in thread
From: Guilhem Bichot @ 2020-12-02 20:52 UTC (permalink / raw)
  To: 45016

Hello!

* start emacs -Q
* create a file named, for example, /tmp/a
* put a line of text in it, save it
* add some characters to this line, don't save
* launch M-x ediff-current-file
* press D to view the diff
* a buffer opens to show the diff but it is empty. I expected to see a
non-empty diff (a context diff, as ediff-custom-diff-options is at its
default "-c").
* if instead of D I press C-u D then I do get a non-empty plain diff
(non-context, non-unified).

I'm using Emacs 26.3 from Ubuntu 20.04. I reproduced it on another Emacs
installation on another computer (CentOS 7) where I built Emacs 27.1 
from source.

Thank you for bringing Emacs to developers.

In GNU Emacs 26.3 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.14)
  of 2020-03-26, modified by Debian built on lcy01-amd64-020
Windowing system distributor 'The X.Org Foundation', version 11.0.12008000
System Description:	Ubuntu 20.04.1 LTS

Recent messages:
Saving file /tmp/a...
Wrote /tmp/a
Making completion list...
Computing differences between ediffZdQdH1 and aEcIRJR ...
Buffer A: Processing difference region 0 of 1
Buffer B: Processing difference region 0 of 1
Processing difference regions ... done
Refining difference region 1 ...
Quit this Ediff session? (y or n) y
Making completion list...

Configured using:
  'configure --build x86_64-linux-gnu --prefix=/usr
  --sharedstatedir=/var/lib --libexecdir=/usr/lib
  --localstatedir=/var/lib --infodir=/usr/share/info
  --mandir=/usr/share/man --enable-libsystemd --with-pop=yes
 
--enable-locallisppath=/etc/emacs:/usr/local/share/emacs/26.3/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/26.3/site-lisp:/usr/share/emacs/site-lisp
  --with-sound=alsa --without-gconf --with-mailutils --build
  x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib
  --libexecdir=/usr/lib --localstatedir=/var/lib
  --infodir=/usr/share/info --mandir=/usr/share/man --enable-libsystemd
  --with-pop=yes
 
--enable-locallisppath=/etc/emacs:/usr/local/share/emacs/26.3/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/26.3/site-lisp:/usr/share/emacs/site-lisp
  --with-sound=alsa --without-gconf --with-mailutils --with-x=yes
  --with-x-toolkit=gtk3 --with-toolkit-scroll-bars 'CFLAGS=-g -O2
  -fdebug-prefix-map=/build/emacs-mEZBk7/emacs-26.3+1=. 
-fstack-protector-strong
  -Wformat -Werror=format-security -Wall' 'CPPFLAGS=-Wdate-time
  -D_FORTIFY_SOURCE=2' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro''

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS GLIB
NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM THREADS LIBSYSTEMD LCMS2

Important settings:
   value of $LANG: fr_FR.UTF-8
   value of $XMODIFIERS: @im=ibus
   locale-coding-system: utf-8-unix

Major mode: Fundamental

Minor modes in effect:
   diff-auto-refine-mode: t
   tooltip-mode: t
   global-eldoc-mode: t
   electric-indent-mode: t
   mouse-wheel-mode: t
   tool-bar-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
   line-number-mode: t
   transient-mark-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message rmc puny seq byte-opt gv
bytecomp byte-compile cconv dired dired-loaddefs format-spec rfc822 mml
mml-sec password-cache epa derived epg epg-config gnus-util rmail
rmail-loaddefs mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
mm-util mail-prsvr mail-utils diff-mode easymenu easy-mmode ediff-merg
ediff-wind ediff-diff ediff-mult ediff-help ediff-init cl-loaddefs
cl-lib ediff-util ediff elec-pair time-date mule-util 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 105677 13166)
  (symbols 48 21758 1)
  (miscs 40 67 140)
  (strings 32 31945 1163)
  (string-bytes 1 877549)
  (vectors 16 15315)
  (vector-slots 8 519098 11532)
  (floats 8 68 143)
  (intervals 56 282 0)
  (buffers 992 16))





^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#45016: additional information
  2020-12-02 20:52 bug#45016: 26.3; when in ediff-current-file, 'D' (view diff) shows empty diff Guilhem Bichot
@ 2020-12-03 11:19 ` Guilhem Bichot
  2021-01-23 23:27 ` bug#45016: 26.3; when in ediff-current-file, 'D' (view diff) shows empty diff Lars Ingebrigtsen
  1 sibling, 0 replies; 4+ messages in thread
From: Guilhem Bichot @ 2020-12-03 11:19 UTC (permalink / raw)
  To: 45016

Apparently a person hit this issue in 2016 too:
https://emacs.stackexchange.com/questions/22090/emacs-show-diff-output-produces-empty-buffer





^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#45016: 26.3; when in ediff-current-file, 'D' (view diff) shows empty diff
  2020-12-02 20:52 bug#45016: 26.3; when in ediff-current-file, 'D' (view diff) shows empty diff Guilhem Bichot
  2020-12-03 11:19 ` bug#45016: additional information Guilhem Bichot
@ 2021-01-23 23:27 ` Lars Ingebrigtsen
  2022-05-09 12:07   ` Lars Ingebrigtsen
  1 sibling, 1 reply; 4+ messages in thread
From: Lars Ingebrigtsen @ 2021-01-23 23:27 UTC (permalink / raw)
  To: Guilhem Bichot; +Cc: 45016

Guilhem Bichot <guilhem.bichot@wanadoo.fr> writes:

> * start emacs -Q
> * create a file named, for example, /tmp/a
> * put a line of text in it, save it
> * add some characters to this line, don't save
> * launch M-x ediff-current-file
> * press D to view the diff
> * a buffer opens to show the diff but it is empty. I expected to see a
> non-empty diff (a context diff, as ediff-custom-diff-options is at its
> default "-c").
> * if instead of D I press C-u D then I do get a non-empty plain diff
> (non-context, non-unified).

This bug is still present in Emacs 28.

This is how the `D' command starts:

(defun ediff-show-diff-output (arg)
  (interactive "P")
[...]
  (let ((buf (cond ((and arg (ediff-buffer-live-p ediff-diff-buffer))
		    ediff-diff-buffer)
		   ((ediff-buffer-live-p ediff-custom-diff-buffer)
		    ediff-custom-diff-buffer)

There's helpfully no doc string here (or comments) about what `arg' is
meant to express, but if we have `arg', we work on `ediff-diff-buffer'
(and this works), and if we don't have `arg', then
`ediff-custom-diff-buffer' is used (and this doesn't work).

I'm pretty unfamiliar with ediff -- does anybody know what the intention
here is for the prefix arg?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#45016: 26.3; when in ediff-current-file, 'D' (view diff) shows empty diff
  2021-01-23 23:27 ` bug#45016: 26.3; when in ediff-current-file, 'D' (view diff) shows empty diff Lars Ingebrigtsen
@ 2022-05-09 12:07   ` Lars Ingebrigtsen
  0 siblings, 0 replies; 4+ messages in thread
From: Lars Ingebrigtsen @ 2022-05-09 12:07 UTC (permalink / raw)
  To: Guilhem Bichot; +Cc: 45016

Lars Ingebrigtsen <larsi@gnus.org> writes:

> There's helpfully no doc string here (or comments) about what `arg' is
> meant to express, but if we have `arg', we work on `ediff-diff-buffer'
> (and this works), and if we don't have `arg', then
> `ediff-custom-diff-buffer' is used (and this doesn't work).
>
> I'm pretty unfamiliar with ediff -- does anybody know what the intention
> here is for the prefix arg?

I looked around in the rest of ediff, and that clarified the purpose,
and I've now made it show the `C-u D' output when the customised output
didn't return anything in Emacs 29.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-05-09 12:07 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-02 20:52 bug#45016: 26.3; when in ediff-current-file, 'D' (view diff) shows empty diff Guilhem Bichot
2020-12-03 11:19 ` bug#45016: additional information Guilhem Bichot
2021-01-23 23:27 ` bug#45016: 26.3; when in ediff-current-file, 'D' (view diff) shows empty diff Lars Ingebrigtsen
2022-05-09 12:07   ` 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).