• Bug#1101963: gvim: default behaviour of detaching from terminal is inco

    From Oscar@21:1/5 to All on Thu Apr 3 08:00:01 2025
    This is a multi-part MIME message sent by reportbug.


    Package: neovim-qt
    Version: 0.2.16-1
    Severity: normal
    Tags: patch
    X-Debbugs-Cc: osc97debbug@sbin.anonaddy.com

    Dear Maintainer,

    I spotted this (potential?) bug when attempting to use git difftool,
    with gvim as the selected tool, e.g.

    git difftool --tool=gvimdiff

    It seems this command expects gvim to remain attached to the terminal.
    As nvim-qt detaches (even when called via 'gvim'), git difftool thinks
    gvim has finished and exited before it even loads and consequently
    deletes the necessary temp files. This means the diffs cannot be read in
    nvim - it just shows empty buffers for the temp files.

    I'm assuming this is not how gvim is expected to behave, or how other
    providers of gvim behave, given that it is not what git expects. Thus, I propose the following patch. Change /usr/libexec/neovim-qt/gvim by
    adding the --nofork option so it reads:

    #!/bin/sh
    exec /usr/bin/nvim-qt --nofork -- "$@"

    After doing this, 'git difftool --tool=gvimdiff' now works as expected.

    Thanks for your time. Hope this report helped.

    Cheers,
    Oscar


    -- System Information:
    Debian Release: 12.10
    APT prefers stable-updates
    APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable')
    Architecture: amd64 (x86_64)

    Kernel: Linux 6.1.0-32-amd64 (SMP w/4 CPU threads; PREEMPT)
    Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8), LANGUAGE not set
    Shell: /bin/sh linked to /usr/bin/dash
    Init: systemd (via /run/systemd/system)
    LSM: AppArmor: enabled

    Versions of packages neovim-qt depends on:
    ii libc6 2.36-9+deb12u10
    ii libgcc-s1 12.2.0-14
    ii libmsgpackc2 4.0.0-3
    ii libqt5core5a 5.15.8+dfsg-11+deb12u2
    ii libqt5gui5 5.15.8+dfsg-11+deb12u2
    ii libqt5network5 5.15.8+dfsg-11+deb12u2
    ii libqt5svg5 5.15.8-3
    ii libqt5widgets5 5.15.8+dfsg-11+deb12u2
    ii libstdc++6 12.2.0-14
    ii neovim 0.7.2-7

    neovim-qt recommends no packages.

    neovim-qt suggests no packages.

    -- no debconf information

    #!/bin/sh
    exec /usr/bin/nvim-qt --nofork -- "$@"

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)