Re: [PATCH] editor: only save (and restore) the terminal if using a tty
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Dec 2, 2021, 14:48 UTC
- Message-ID
- <nycvar.QRO.7.76.6.2112021542390.63@tvgsbejvaqbjf.bet>
- In-Reply-To
- <CAPx1GvcML9TvmP1BSLN0vKWD++8LBj-68Xwmz-KrZM32Q=0_Ug@mail.gmail.com>
Hi Chris,
On Tue, 30 Nov 2021, Chris Torek wrote:
Show 13 quoted lines
> On Tue, Nov 30, 2021 at 2:41 PM Phillip Wood <phillip.wood123@gmail.com> wrote: > > On 23/11/2021 17:31, Carlo Arenas wrote: > > > Restricting this feature further, maybe through a configuration > > > property or even special casing the EDITOR is also IMHO a good idea. > > > > I think just doing this when we run the editor may be the way to go as I > > think it is only that case that can mess up the terminal. > > If it only happens with certain versions of vi / vim, perhaps Git could come > with a front end program that saves the tty state, runs vim, and restores the > tty state. (Or set this up so that the program can run any editor.) Then add > a FAQ entry if needed: "if your editor goofs up the terminal, insert this front > end program".
Putting myself into an end-user's shoes, I would much prefer not to be asked to do extra work and I imagine that the millions of other users who go with Git's default editor have the very same preference.
Just like we default to `LESS=FRX` for Git's default pager, and just like we special-case `less` and `vi` in `git grep -O<program>`, it makes sense to special-case `vi` when saving/restoring the terminal because we know it helps users.
And by "special-case", I want to say that Git should provide a paved path to success, not a workaround that users still have to configure manually.
Ciao, Dscho