Thread (7 messages) flat view 7 messages, 6 authors, 2021-02-12

Re: default editor

From: Eric Sunshine <hidden>
Date: 2021-02-07 21:58:24

On Sun, Feb 7, 2021 at 1:38 PM Jeff King [off-list ref] wrote:
The "2l" was bogus (there is no line 2). It seems likely that an
interactive user might make at least one invalid command while editing.
Some versions (like GNU ed) have a "-l" option to loosen the exit code.
Cygwin `ed` does support `-l`, so that's helpful, although it still
fails the "test editor" button in the Git-For-Windows installer
program since the installer calls `ed` with a Windows style path
rather than a Unix style path which Cygwin `ed` doesn't understand. It
is possible to skip "test editor" and continue Git-For-Windows
installation without testing. The bigger problem after that, at least
in my testing, is that when `git` from Git-For-Windows itself
eventually launches Cygwin `ed` at commit time, it bombs with:

    0 [main] ed (2444) C:\cygwin64\bin\ed.exe: *** fatal error -
    cygheap base mismatch detected - 0x18034C408/0x180347408.

In fact, Cygwin `ed` crashes with that same problem even just being
launched from the MSYS shell provided by Git-For-Windows due to bad
interaction between the DLL's. On the other hand, Cygwin `ed` launches
just fine from the Cygwin shell as one would expect.

By the way, it's also possible to install Cygwin's Git from the Cygwin
installer rather than attempting to use the Git provided by the
Git-For-Windows project. The combination of Cygwin `ed` and Cygwin
`git` works just fine (in my tests) once you configure `ed` as the Git
editor either by setting GIT_EDITOR or EDITOR environment variables to
`ed -l` or by configuring git itself:

    git config --global --add core.config 'ed -l'

(You would want to uninstall Git-For-Windows, too, if you have it installed.)
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help