GNU bug report logs - #68377
Cannot commit parts of *vc-diff* on Microsoft Windows

Previous Next

Package: emacs;

Reported by: sds <at> gnu.org

Date: Thu, 11 Jan 2024 02:08:02 UTC

Severity: normal

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 68377 in the body.
You can then email your comments to 68377 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#68377; Package emacs. (Thu, 11 Jan 2024 02:08:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to sds <at> gnu.org:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Thu, 11 Jan 2024 02:08:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Sam Steingold <sds <at> gnu.org>
To: bug-gnu-emacs <at> gnu.org
Subject: Cannot commit parts of *vc-diff* on Microsoft Windows
Date: Wed, 10 Jan 2024 21:07:14 -0500
https://emacs.stackexchange.com/q/80039/795

Emacs has a beautiful feature: in the `*vc-diff*` buffer (generated by [`vc-diff`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Old-Revisions.html) either by <kbd>C-x v =</kbd> in a file buffer or by <kbd>=</kbd> in a `*vc-dir*` buffer), kill unwanted hunks with <kbd>k</kbd> (i.e., [`diff-hunk-kill`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Diff-Mode.html)) and then commit the remaining hunks with <kbd>C-x v v</kbd> (i.e., [`vc-next-action`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Basic-VC-Editing.html)). If you don't know about it -- try it, it is incredibly useful!

Alas, it does _not_ work for me on windows: after <kbd>C-c C-c</kbd> (i.e., [`log-edit-done`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Log-Buffer.html)) in `*vc-log*`, I get 
> vc-do-command: Failed (status 1): c:/Users/ssteingold/AppData/Local/Git/bin/git.exe --no-pager apply --cached c:/msys64/tmp/git-patchPbbWgJ

and `*vc*` buffer is
```
error: patch failed: fxpy/model.py:1071
error: fxpy/model.py: patch does not apply
```

***Additionally***: 

1. Software:
   * [`GNU Emacs 29.1 (build 2, x86_64-w64-mingw32) of 2023-08-02`](https://ftp.gnu.org/gnu/emacs/windows/emacs-29/)
   * [`git version 2.42.0.windows.2`](https://gitforwindows.org/)
1. *normal* commits work just **fine**, using `vc-next-action` from either file buffer or `*vc-dir*`.
1. All my files have unix line terminators (`LF`) as indicated in the mode line as `(Unix)`
1. I set `autocrlf` to `false` globally
1. I have `(prefer-coding-system 'utf-8-unix)` in `.emacs`
1. `vc-coding-system-inherit-eol` is `t`, I did not touch it
1. When I add `"-v"` to `git apply` invocation in `vc-git-checkin` (`vc-git.el`), `*vc*` buffer contains `error: while searching for:.....` and every line in `.....` is terminated with `?` - which seems to indicate line-ending problems... (!!!)

***Q***: how do I fix this?
(This is a work box, I cannot send email from Emacs, so I cannot even file an Emacs bug report!)

# work-around 1

Add 
```
(setq coding-system-for-write 'utf-8-unix)
```
inside `(with-temp-file patch-file ...)` in `vc-git-checkin`

# work-around 2

Add
```
;; replace `undecided`:
(setf (cadr (assoc "" file-coding-system-alist)) 'utf-8-unix)
```
to `.emacs`

# Emacs bug

`vc-git-checkin` should respect `vc-coding-system-inherit-eol` and set [`coding-system-for-write`](https://www.gnu.org/software/emacs/manual/html_node/elisp/Specifying-Coding-Systems.html) when writing the patch.

Also, it does not seem reasonable that [`prefer-coding-system`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Output-Coding.html) does not affect [`file-coding-system-alist`](https://www.gnu.org/software/emacs/manual/html_node/elisp/Default-Coding-Systems.html).





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#68377; Package emacs. (Thu, 11 Jan 2024 12:30:02 GMT) Full text and rfc822 format available.

Message #8 received at 68377 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: sds <at> gnu.org
Cc: 68377 <at> debbugs.gnu.org
Subject: Re: bug#68377: Cannot commit parts of *vc-diff* on Microsoft Windows
Date: Thu, 11 Jan 2024 14:28:49 +0200
> From: Sam Steingold <sds <at> gnu.org>
> Date: Wed, 10 Jan 2024 21:07:14 -0500
> 
> https://emacs.stackexchange.com/q/80039/795
> 
> Emacs has a beautiful feature: in the `*vc-diff*` buffer (generated by [`vc-diff`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Old-Revisions.html) either by <kbd>C-x v =</kbd> in a file buffer or by <kbd>=</kbd> in a `*vc-dir*` buffer), kill unwanted hunks with <kbd>k</kbd> (i.e., [`diff-hunk-kill`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Diff-Mode.html)) and then commit the remaining hunks with <kbd>C-x v v</kbd> (i.e., [`vc-next-action`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Basic-VC-Editing.html)). If you don't know about it -- try it, it is incredibly useful!

(I must say that formatting of this report is AWFUL!  How can a human
being be expected to read and understand it it??  PLEASE try to make
bug reports more readable in the future.)

> Alas, it does _not_ work for me on windows: after <kbd>C-c C-c</kbd> (i.e., [`log-edit-done`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Log-Buffer.html)) in `*vc-log*`, I get 
> > vc-do-command: Failed (status 1): c:/Users/ssteingold/AppData/Local/Git/bin/git.exe --no-pager apply --cached c:/msys64/tmp/git-patchPbbWgJ
> 
> and `*vc*` buffer is
> ```
> error: patch failed: fxpy/model.py:1071
> error: fxpy/model.py: patch does not apply
> ```
> 
> ***Additionally***: 
> 
> 1. Software:
>    * [`GNU Emacs 29.1 (build 2, x86_64-w64-mingw32) of 2023-08-02`](https://ftp.gnu.org/gnu/emacs/windows/emacs-29/)
>    * [`git version 2.42.0.windows.2`](https://gitforwindows.org/)
> 1. *normal* commits work just **fine**, using `vc-next-action` from either file buffer or `*vc-dir*`.
> 1. All my files have unix line terminators (`LF`) as indicated in the mode line as `(Unix)`
> 1. I set `autocrlf` to `false` globally
> 1. I have `(prefer-coding-system 'utf-8-unix)` in `.emacs`
> 1. `vc-coding-system-inherit-eol` is `t`, I did not touch it
> 1. When I add `"-v"` to `git apply` invocation in `vc-git-checkin` (`vc-git.el`), `*vc*` buffer contains `error: while searching for:.....` and every line in `.....` is terminated with `?` - which seems to indicate line-ending problems... (!!!)
> 
> ***Q***: how do I fix this?
> (This is a work box, I cannot send email from Emacs, so I cannot even file an Emacs bug report!)
> 
> # work-around 1
> 
> Add 
> ```
> (setq coding-system-for-write 'utf-8-unix)
> ```
> inside `(with-temp-file patch-file ...)` in `vc-git-checkin`

The code in question already does:

        (let ((patch-file (make-nearby-temp-file "git-patch"))
              ;; Temporarily countermand the let-binding at the
              ;; beginning of this function.
              (coding-system-for-write
               (coding-system-change-eol-conversion
                ;; On DOS/Windows, it is important for the patch file
                ;; to have the Unix EOL format, because Git expects
                ;; that, even on Windows.
                (or pcsw vc-git-commits-coding-system) 'unix)))
          (with-temp-file patch-file
            (insert vc-git-patch-string))

So coding-system-for-write should already be -unix when with-temp-file
runs.  I guess there's more here than meets the eye, or maybe I'm
missing something.

> # work-around 2
> 
> Add
> ```
> ;; replace `undecided`:
> (setf (cadr (assoc "" file-coding-system-alist)) 'utf-8-unix)
> ```
> to `.emacs`

That can't be right.

> # Emacs bug
> 
> `vc-git-checkin` should respect `vc-coding-system-inherit-eol` and set [`coding-system-for-write`](https://www.gnu.org/software/emacs/manual/html_node/elisp/Specifying-Coding-Systems.html) when writing the patch.

This variable is for _reading_ diffs from a VC command, not about
_writing_ them.  So it is not appropriate in this case, and the diffs
shown in the *vc-diff* buffer have correct EOLs.

> Also, it does not seem reasonable that [`prefer-coding-system`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Output-Coding.html) does not affect [`file-coding-system-alist`](https://www.gnu.org/software/emacs/manual/html_node/elisp/Default-Coding-Systems.html).

Using prefer-coding-system to make utf-8 the preferred encoding is
wrong on MS-Windows in the first place: UTF-8 is not yet supported by
Windows well enough to allow that.  In particular, encoding program
arguments in UTF-8 will cause failures in Emacs commands that run
subprocesses.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#68377; Package emacs. (Thu, 11 Jan 2024 12:46:01 GMT) Full text and rfc822 format available.

Message #11 received at 68377 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: sds <at> gnu.org
Cc: 68377 <at> debbugs.gnu.org
Subject: Re: bug#68377: Cannot commit parts of *vc-diff* on Microsoft Windows
Date: Thu, 11 Jan 2024 14:44:41 +0200
> Cc: 68377 <at> debbugs.gnu.org
> Date: Thu, 11 Jan 2024 14:28:49 +0200
> From: Eli Zaretskii <eliz <at> gnu.org>
> 
> > # work-around 1
> > 
> > Add 
> > ```
> > (setq coding-system-for-write 'utf-8-unix)
> > ```
> > inside `(with-temp-file patch-file ...)` in `vc-git-checkin`
> 
> The code in question already does:
> 
>         (let ((patch-file (make-nearby-temp-file "git-patch"))
>               ;; Temporarily countermand the let-binding at the
>               ;; beginning of this function.
>               (coding-system-for-write
>                (coding-system-change-eol-conversion
>                 ;; On DOS/Windows, it is important for the patch file
>                 ;; to have the Unix EOL format, because Git expects
>                 ;; that, even on Windows.
>                 (or pcsw vc-git-commits-coding-system) 'unix)))
>           (with-temp-file patch-file
>             (insert vc-git-patch-string))
> 
> So coding-system-for-write should already be -unix when with-temp-file
> runs.  I guess there's more here than meets the eye, or maybe I'm
> missing something.

And sure enough, trying the recipe from "emacs -Q" fails to reproduce
the problem.  So there's something else at work here.

Could you please try this in "emacs -Q"?  If it doesn't work in
"emacs -Q", please step in Edebug through vc-git-checkin and tell
what you see as the value of coding-system-for-write when this code
is executed:

          (with-temp-file patch-file
            (insert vc-git-patch-string))

and also what is the EOL format of patch-file that Emacs creates
there, and let's take it from there.

If this does work in "emacs -Q", then some of your customizations
related to coding-systems probably get in the way.

FTR, in my case autocrlf is also false (as it should be).




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#68377; Package emacs. (Thu, 11 Jan 2024 12:55:02 GMT) Full text and rfc822 format available.

Message #14 received at 68377 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: sds <at> gnu.org
Cc: 68377 <at> debbugs.gnu.org
Subject: Re: bug#68377: Cannot commit parts of *vc-diff* on Microsoft Windows
Date: Thu, 11 Jan 2024 14:54:27 +0200
> Cc: 68377 <at> debbugs.gnu.org
> Date: Thu, 11 Jan 2024 14:44:41 +0200
> From: Eli Zaretskii <eliz <at> gnu.org>
> 
> FTR, in my case autocrlf is also false (as it should be).

Btw, I tested in the master-branch version, so please begin by testing
"emacs -Q" on master, not the Emacs 29.1 version.  If the master
version works in "emacs -Q", then try the same with Emacs 29.1.

Thanks.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#68377; Package emacs. (Thu, 11 Jan 2024 13:20:02 GMT) Full text and rfc822 format available.

Message #17 received at 68377 <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dmitry <at> gutov.dev>
To: Eli Zaretskii <eliz <at> gnu.org>, sds <at> gnu.org
Cc: 68377 <at> debbugs.gnu.org
Subject: Re: bug#68377: Cannot commit parts of *vc-diff* on Microsoft Windows
Date: Thu, 11 Jan 2024 15:19:26 +0200
On 11/01/2024 14:28, Eli Zaretskii wrote:
>> From: Sam Steingold <sds <at> gnu.org>
>> Date: Wed, 10 Jan 2024 21:07:14 -0500
>>
>> https://emacs.stackexchange.com/q/80039/795
>>
>> Emacs has a beautiful feature: in the `*vc-diff*` buffer (generated by [`vc-diff`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Old-Revisions.html) either by <kbd>C-x v =</kbd> in a file buffer or by <kbd>=</kbd> in a `*vc-dir*` buffer), kill unwanted hunks with <kbd>k</kbd> (i.e., [`diff-hunk-kill`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Diff-Mode.html)) and then commit the remaining hunks with <kbd>C-x v v</kbd> (i.e., [`vc-next-action`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Basic-VC-Editing.html)). If you don't know about it -- try it, it is incredibly useful!
> 
> (I must say that formatting of this report is AWFUL!  How can a human
> being be expected to read and understand it it??  PLEASE try to make
> bug reports more readable in the future.)

Looked fine to me.

I think the Markdown format is very readable.

>> Alas, it does _not_ work for me on windows: after <kbd>C-c C-c</kbd> (i.e., [`log-edit-done`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Log-Buffer.html)) in `*vc-log*`, I get
>>> vc-do-command: Failed (status 1): c:/Users/ssteingold/AppData/Local/Git/bin/git.exe --no-pager apply --cached c:/msys64/tmp/git-patchPbbWgJ
>>
>> and `*vc*` buffer is
>> ```
>> error: patch failed: fxpy/model.py:1071
>> error: fxpy/model.py: patch does not apply
>> ```
>>
>> ***Additionally***:
>>
>> 1. Software:
>>     * [`GNU Emacs 29.1 (build 2, x86_64-w64-mingw32) of 2023-08-02`](https://ftp.gnu.org/gnu/emacs/windows/emacs-29/)
>>     * [`git version 2.42.0.windows.2`](https://gitforwindows.org/)
>> 1. *normal* commits work just **fine**, using `vc-next-action` from either file buffer or `*vc-dir*`.
>> 1. All my files have unix line terminators (`LF`) as indicated in the mode line as `(Unix)`
>> 1. I set `autocrlf` to `false` globally
>> 1. I have `(prefer-coding-system 'utf-8-unix)` in `.emacs`
>> 1. `vc-coding-system-inherit-eol` is `t`, I did not touch it
>> 1. When I add `"-v"` to `git apply` invocation in `vc-git-checkin` (`vc-git.el`), `*vc*` buffer contains `error: while searching for:.....` and every line in `.....` is terminated with `?` - which seems to indicate line-ending problems... (!!!)
>>
>> ***Q***: how do I fix this?
>> (This is a work box, I cannot send email from Emacs, so I cannot even file an Emacs bug report!)
>>
>> # work-around 1
>>
>> Add
>> ```
>> (setq coding-system-for-write 'utf-8-unix)
>> ```
>> inside `(with-temp-file patch-file ...)` in `vc-git-checkin`
> 
> The code in question already does:
> 
>          (let ((patch-file (make-nearby-temp-file "git-patch"))
>                ;; Temporarily countermand the let-binding at the
>                ;; beginning of this function.
>                (coding-system-for-write
>                 (coding-system-change-eol-conversion
>                  ;; On DOS/Windows, it is important for the patch file
>                  ;; to have the Unix EOL format, because Git expects
>                  ;; that, even on Windows.
>                  (or pcsw vc-git-commits-coding-system) 'unix)))
>            (with-temp-file patch-file
>              (insert vc-git-patch-string))
> 
> So coding-system-for-write should already be -unix when with-temp-file
> runs.  I guess there's more here than meets the eye, or maybe I'm
> missing something.

I think this is the same as bug#65049, meaning that it's fixed on 
master, but not in Emacs 29.1 (which was the version specified in the 
report).




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#68377; Package emacs. (Thu, 11 Jan 2024 14:48:02 GMT) Full text and rfc822 format available.

Message #20 received at 68377 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Dmitry Gutov <dmitry <at> gutov.dev>
Cc: 68377 <at> debbugs.gnu.org, sds <at> gnu.org
Subject: Re: bug#68377: Cannot commit parts of *vc-diff* on Microsoft Windows
Date: Thu, 11 Jan 2024 16:47:10 +0200
> Date: Thu, 11 Jan 2024 15:19:26 +0200
> Cc: 68377 <at> debbugs.gnu.org
> From: Dmitry Gutov <dmitry <at> gutov.dev>
> 
> On 11/01/2024 14:28, Eli Zaretskii wrote:
> >> From: Sam Steingold <sds <at> gnu.org>
> >> Date: Wed, 10 Jan 2024 21:07:14 -0500
> >>
> >> https://emacs.stackexchange.com/q/80039/795
> >>
> >> Emacs has a beautiful feature: in the `*vc-diff*` buffer (generated by [`vc-diff`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Old-Revisions.html) either by <kbd>C-x v =</kbd> in a file buffer or by <kbd>=</kbd> in a `*vc-dir*` buffer), kill unwanted hunks with <kbd>k</kbd> (i.e., [`diff-hunk-kill`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Diff-Mode.html)) and then commit the remaining hunks with <kbd>C-x v v</kbd> (i.e., [`vc-next-action`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Basic-VC-Editing.html)). If you don't know about it -- try it, it is incredibly useful!
> > 
> > (I must say that formatting of this report is AWFUL!  How can a human
> > being be expected to read and understand it it??  PLEASE try to make
> > bug reports more readable in the future.)
> 
> Looked fine to me.
> 
> I think the Markdown format is very readable.

It isn't Markdown that bothered me, it's some kind of HTML mixed in,
but in an email message whose format is plain text (at least as I got
it here).

> I think this is the same as bug#65049, meaning that it's fixed on 
> master, but not in Emacs 29.1 (which was the version specified in the 
> report).

Possibly.  If Sam says it works for him on master, we will know.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#68377; Package emacs. (Thu, 11 Jan 2024 15:08:02 GMT) Full text and rfc822 format available.

Message #23 received at 68377 <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dmitry <at> gutov.dev>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 68377 <at> debbugs.gnu.org, sds <at> gnu.org
Subject: Re: bug#68377: Cannot commit parts of *vc-diff* on Microsoft Windows
Date: Thu, 11 Jan 2024 17:07:48 +0200
On 11/01/2024 16:47, Eli Zaretskii wrote:
>> Date: Thu, 11 Jan 2024 15:19:26 +0200
>> Cc:68377 <at> debbugs.gnu.org
>> From: Dmitry Gutov<dmitry <at> gutov.dev>
>>
>> On 11/01/2024 14:28, Eli Zaretskii wrote:
>>>> From: Sam Steingold<sds <at> gnu.org>
>>>> Date: Wed, 10 Jan 2024 21:07:14 -0500
>>>>
>>>> https://emacs.stackexchange.com/q/80039/795
>>>>
>>>> Emacs has a beautiful feature: in the `*vc-diff*` buffer (generated by [`vc-diff`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Old-Revisions.html) either by <kbd>C-x v =</kbd> in a file buffer or by <kbd>=</kbd> in a `*vc-dir*` buffer), kill unwanted hunks with <kbd>k</kbd> (i.e., [`diff-hunk-kill`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Diff-Mode.html)) and then commit the remaining hunks with <kbd>C-x v v</kbd> (i.e., [`vc-next-action`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Basic-VC-Editing.html)). If you don't know about it -- try it, it is incredibly useful!
>>> (I must say that formatting of this report is AWFUL!  How can a human
>>> being be expected to read and understand it it??  PLEASE try to make
>>> bug reports more readable in the future.)
>> Looked fine to me.
>>
>> I think the Markdown format is very readable.
> It isn't Markdown that bothered me, it's some kind of HTML mixed in,
> but in an email message whose format is plain text (at least as I got
> it here).

The <kbd> tags? These are also supported by Markdown. The links too.

>> I think this is the same as bug#65049, meaning that it's fixed on
>> master, but not in Emacs 29.1 (which was the version specified in the
>> report).
> Possibly.  If Sam says it works for him on master, we will know.

Yes, let's see what he says.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#68377; Package emacs. (Sun, 14 Jan 2024 16:44:02 GMT) Full text and rfc822 format available.

Message #26 received at 68377 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Dmitry Gutov <dmitry <at> gutov.dev>
Cc: 68377 <at> debbugs.gnu.org, sds <at> gnu.org
Subject: Re: bug#68377: Cannot commit parts of *vc-diff* on Microsoft Windows
Date: Sun, 14 Jan 2024 18:42:41 +0200
> Date: Thu, 11 Jan 2024 17:07:48 +0200
> From: Dmitry Gutov <dmitry <at> gutov.dev>
> Cc: 68377 <at> debbugs.gnu.org, sds <at> gnu.org
> 
> On 11/01/2024 16:47, Eli Zaretskii wrote:
> >> Date: Thu, 11 Jan 2024 15:19:26 +0200
> >> Cc:68377 <at> debbugs.gnu.org
> >> From: Dmitry Gutov<dmitry <at> gutov.dev>
> >>
> >> On 11/01/2024 14:28, Eli Zaretskii wrote:
> >>>> From: Sam Steingold<sds <at> gnu.org>
> >>>> Date: Wed, 10 Jan 2024 21:07:14 -0500
> >>>>
> >>>> https://emacs.stackexchange.com/q/80039/795
> >>>>
> >>>> Emacs has a beautiful feature: in the `*vc-diff*` buffer (generated by [`vc-diff`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Old-Revisions.html) either by <kbd>C-x v =</kbd> in a file buffer or by <kbd>=</kbd> in a `*vc-dir*` buffer), kill unwanted hunks with <kbd>k</kbd> (i.e., [`diff-hunk-kill`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Diff-Mode.html)) and then commit the remaining hunks with <kbd>C-x v v</kbd> (i.e., [`vc-next-action`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Basic-VC-Editing.html)). If you don't know about it -- try it, it is incredibly useful!
> >>> (I must say that formatting of this report is AWFUL!  How can a human
> >>> being be expected to read and understand it it??  PLEASE try to make
> >>> bug reports more readable in the future.)
> >> Looked fine to me.
> >>
> >> I think the Markdown format is very readable.
> > It isn't Markdown that bothered me, it's some kind of HTML mixed in,
> > but in an email message whose format is plain text (at least as I got
> > it here).
> 
> The <kbd> tags? These are also supported by Markdown. The links too.
> 
> >> I think this is the same as bug#65049, meaning that it's fixed on
> >> master, but not in Emacs 29.1 (which was the version specified in the
> >> report).
> > Possibly.  If Sam says it works for him on master, we will know.
> 
> Yes, let's see what he says.

Sam, could you please chime in after testing this in Emacs 30?

Thanks.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#68377; Package emacs. (Sat, 27 Jan 2024 09:12:01 GMT) Full text and rfc822 format available.

Message #29 received at 68377 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: sds <at> gnu.org
Cc: 68377 <at> debbugs.gnu.org, dmitry <at> gutov.dev
Subject: Re: bug#68377: Cannot commit parts of *vc-diff* on Microsoft Windows
Date: Sat, 27 Jan 2024 11:11:24 +0200
Ping!  Sam, would you please try this on the master branch?

> Cc: 68377 <at> debbugs.gnu.org, sds <at> gnu.org
> Date: Sun, 14 Jan 2024 18:42:41 +0200
> From: Eli Zaretskii <eliz <at> gnu.org>
> 
> > Date: Thu, 11 Jan 2024 17:07:48 +0200
> > From: Dmitry Gutov <dmitry <at> gutov.dev>
> > Cc: 68377 <at> debbugs.gnu.org, sds <at> gnu.org
> > 
> > On 11/01/2024 16:47, Eli Zaretskii wrote:
> > >> Date: Thu, 11 Jan 2024 15:19:26 +0200
> > >> Cc:68377 <at> debbugs.gnu.org
> > >> From: Dmitry Gutov<dmitry <at> gutov.dev>
> > >>
> > >> On 11/01/2024 14:28, Eli Zaretskii wrote:
> > >>>> From: Sam Steingold<sds <at> gnu.org>
> > >>>> Date: Wed, 10 Jan 2024 21:07:14 -0500
> > >>>>
> > >>>> https://emacs.stackexchange.com/q/80039/795
> > >>>>
> > >>>> Emacs has a beautiful feature: in the `*vc-diff*` buffer (generated by [`vc-diff`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Old-Revisions.html) either by <kbd>C-x v =</kbd> in a file buffer or by <kbd>=</kbd> in a `*vc-dir*` buffer), kill unwanted hunks with <kbd>k</kbd> (i.e., [`diff-hunk-kill`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Diff-Mode.html)) and then commit the remaining hunks with <kbd>C-x v v</kbd> (i.e., [`vc-next-action`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Basic-VC-Editing.html)). If you don't know about it -- try it, it is incredibly useful!
> > >>> (I must say that formatting of this report is AWFUL!  How can a human
> > >>> being be expected to read and understand it it??  PLEASE try to make
> > >>> bug reports more readable in the future.)
> > >> Looked fine to me.
> > >>
> > >> I think the Markdown format is very readable.
> > > It isn't Markdown that bothered me, it's some kind of HTML mixed in,
> > > but in an email message whose format is plain text (at least as I got
> > > it here).
> > 
> > The <kbd> tags? These are also supported by Markdown. The links too.
> > 
> > >> I think this is the same as bug#65049, meaning that it's fixed on
> > >> master, but not in Emacs 29.1 (which was the version specified in the
> > >> report).
> > > Possibly.  If Sam says it works for him on master, we will know.
> > 
> > Yes, let's see what he says.
> 
> Sam, could you please chime in after testing this in Emacs 30?
> 
> Thanks.
> 
> 
> 
> 




Reply sent to Eli Zaretskii <eliz <at> gnu.org>:
You have taken responsibility. (Sat, 10 Feb 2024 08:08:02 GMT) Full text and rfc822 format available.

Notification sent to sds <at> gnu.org:
bug acknowledged by developer. (Sat, 10 Feb 2024 08:08:02 GMT) Full text and rfc822 format available.

Message #34 received at 68377-done <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: sds <at> gnu.org
Cc: 68377-done <at> debbugs.gnu.org, dmitry <at> gutov.dev
Subject: Re: bug#68377: Cannot commit parts of *vc-diff* on Microsoft Windows
Date: Sat, 10 Feb 2024 10:06:45 +0200
> Cc: 68377 <at> debbugs.gnu.org, dmitry <at> gutov.dev
> Date: Sat, 27 Jan 2024 11:11:24 +0200
> From: Eli Zaretskii <eliz <at> gnu.org>
> 
> Ping!  Sam, would you please try this on the master branch?
> 
> > Cc: 68377 <at> debbugs.gnu.org, sds <at> gnu.org
> > Date: Sun, 14 Jan 2024 18:42:41 +0200
> > From: Eli Zaretskii <eliz <at> gnu.org>
> > 
> > > Date: Thu, 11 Jan 2024 17:07:48 +0200
> > > From: Dmitry Gutov <dmitry <at> gutov.dev>
> > > Cc: 68377 <at> debbugs.gnu.org, sds <at> gnu.org
> > > 
> > > On 11/01/2024 16:47, Eli Zaretskii wrote:
> > > >> Date: Thu, 11 Jan 2024 15:19:26 +0200
> > > >> Cc:68377 <at> debbugs.gnu.org
> > > >> From: Dmitry Gutov<dmitry <at> gutov.dev>
> > > >>
> > > >> On 11/01/2024 14:28, Eli Zaretskii wrote:
> > > >>>> From: Sam Steingold<sds <at> gnu.org>
> > > >>>> Date: Wed, 10 Jan 2024 21:07:14 -0500
> > > >>>>
> > > >>>> https://emacs.stackexchange.com/q/80039/795
> > > >>>>
> > > >>>> Emacs has a beautiful feature: in the `*vc-diff*` buffer (generated by [`vc-diff`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Old-Revisions.html) either by <kbd>C-x v =</kbd> in a file buffer or by <kbd>=</kbd> in a `*vc-dir*` buffer), kill unwanted hunks with <kbd>k</kbd> (i.e., [`diff-hunk-kill`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Diff-Mode.html)) and then commit the remaining hunks with <kbd>C-x v v</kbd> (i.e., [`vc-next-action`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Basic-VC-Editing.html)). If you don't know about it -- try it, it is incredibly useful!
> > > >>> (I must say that formatting of this report is AWFUL!  How can a human
> > > >>> being be expected to read and understand it it??  PLEASE try to make
> > > >>> bug reports more readable in the future.)
> > > >> Looked fine to me.
> > > >>
> > > >> I think the Markdown format is very readable.
> > > > It isn't Markdown that bothered me, it's some kind of HTML mixed in,
> > > > but in an email message whose format is plain text (at least as I got
> > > > it here).
> > > 
> > > The <kbd> tags? These are also supported by Markdown. The links too.
> > > 
> > > >> I think this is the same as bug#65049, meaning that it's fixed on
> > > >> master, but not in Emacs 29.1 (which was the version specified in the
> > > >> report).
> > > > Possibly.  If Sam says it works for him on master, we will know.
> > > 
> > > Yes, let's see what he says.
> > 
> > Sam, could you please chime in after testing this in Emacs 30?
> > 
> > Thanks.

No further comments within a month, so I presume the bug is indeed
fixed on master, and I'm therefore closing it.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#68377; Package emacs. (Sat, 10 Feb 2024 11:52:01 GMT) Full text and rfc822 format available.

Message #37 received at 68377-done <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dmitry <at> gutov.dev>
To: Eli Zaretskii <eliz <at> gnu.org>, sds <at> gnu.org
Cc: 68377-done <at> debbugs.gnu.org
Subject: Re: bug#68377: Cannot commit parts of *vc-diff* on Microsoft Windows
Date: Sat, 10 Feb 2024 13:44:00 +0200
On 10/02/2024 10:06, Eli Zaretskii wrote:
>> Cc: 68377 <at> debbugs.gnu.org, dmitry <at> gutov.dev
>> Date: Sat, 27 Jan 2024 11:11:24 +0200
>> From: Eli Zaretskii <eliz <at> gnu.org>
>>
>> Ping!  Sam, would you please try this on the master branch?
>>
>>> Cc: 68377 <at> debbugs.gnu.org, sds <at> gnu.org
>>> Date: Sun, 14 Jan 2024 18:42:41 +0200
>>> From: Eli Zaretskii <eliz <at> gnu.org>
>>>
>>>> Date: Thu, 11 Jan 2024 17:07:48 +0200
>>>> From: Dmitry Gutov <dmitry <at> gutov.dev>
>>>> Cc: 68377 <at> debbugs.gnu.org, sds <at> gnu.org
>>>>
>>>> On 11/01/2024 16:47, Eli Zaretskii wrote:
>>>>>> Date: Thu, 11 Jan 2024 15:19:26 +0200
>>>>>> Cc:68377 <at> debbugs.gnu.org
>>>>>> From: Dmitry Gutov<dmitry <at> gutov.dev>
>>>>>>
>>>>>> On 11/01/2024 14:28, Eli Zaretskii wrote:
>>>>>>>> From: Sam Steingold<sds <at> gnu.org>
>>>>>>>> Date: Wed, 10 Jan 2024 21:07:14 -0500
>>>>>>>>
>>>>>>>> https://emacs.stackexchange.com/q/80039/795
>>>>>>>>
>>>>>>>> Emacs has a beautiful feature: in the `*vc-diff*` buffer (generated by [`vc-diff`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Old-Revisions.html) either by <kbd>C-x v =</kbd> in a file buffer or by <kbd>=</kbd> in a `*vc-dir*` buffer), kill unwanted hunks with <kbd>k</kbd> (i.e., [`diff-hunk-kill`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Diff-Mode.html)) and then commit the remaining hunks with <kbd>C-x v v</kbd> (i.e., [`vc-next-action`](https://www.gnu.org/software/emacs/manual/html_node/emacs/Basic-VC-Editing.html)). If you don't know about it -- try it, it is incredibly useful!
>>>>>>> (I must say that formatting of this report is AWFUL!  How can a human
>>>>>>> being be expected to read and understand it it??  PLEASE try to make
>>>>>>> bug reports more readable in the future.)
>>>>>> Looked fine to me.
>>>>>>
>>>>>> I think the Markdown format is very readable.
>>>>> It isn't Markdown that bothered me, it's some kind of HTML mixed in,
>>>>> but in an email message whose format is plain text (at least as I got
>>>>> it here).
>>>>
>>>> The <kbd> tags? These are also supported by Markdown. The links too.
>>>>
>>>>>> I think this is the same as bug#65049, meaning that it's fixed on
>>>>>> master, but not in Emacs 29.1 (which was the version specified in the
>>>>>> report).
>>>>> Possibly.  If Sam says it works for him on master, we will know.
>>>>
>>>> Yes, let's see what he says.
>>>
>>> Sam, could you please chime in after testing this in Emacs 30?
>>>
>>> Thanks.
> 
> No further comments within a month, so I presume the bug is indeed
> fixed on master, and I'm therefore closing it.

Yes: Sam confirmed that in a SE comment.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 09 Mar 2024 12:24:06 GMT) Full text and rfc822 format available.

This bug report was last modified 1 year and 103 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.