GIT Bash has bad flicker #10038

Closed
opened 2026-01-31 02:10:57 +00:00 by claunia · 19 comments
Owner

Originally created by @GordonSmith on GitHub (Aug 6, 2020).

Environment

Windows build number: Microsoft Windows [Version 10.0.19042.423]
Windows Terminal version (if applicable):  1.1.2021.0  

Any other software?
Git for windows:  v2.28.0

Steps to reproduce

  1. Open a "GIT Bash" terminal session
  2. Press backspace key
  3. BashFlicker

Expected behavior

No nasty flicker

Actual behavior

Nasty flicker

Originally created by @GordonSmith on GitHub (Aug 6, 2020). <!-- 🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨 I ACKNOWLEDGE THE FOLLOWING BEFORE PROCEEDING: 1. If I delete this entire template and go my own path, the core team may close my issue without further explanation or engagement. 2. If I list multiple bugs/concerns in this one issue, the core team may close my issue without further explanation or engagement. 3. If I write an issue that has many duplicates, the core team may close my issue without further explanation or engagement (and without necessarily spending time to find the exact duplicate ID number). 4. If I leave the title incomplete when filing the issue, the core team may close my issue without further explanation or engagement. 5. If I file something completely blank in the body, the core team may close my issue without further explanation or engagement. All good? Then proceed! --> <!-- This bug tracker is monitored by Windows Terminal development team and other technical folks. **Important: When reporting BSODs or security issues, DO NOT attach memory dumps, logs, or traces to Github issues**. Instead, send dumps/traces to secure@microsoft.com, referencing this GitHub issue. If this is an application crash, please also provide a Feedback Hub submission link so we can find your diagnostic data on the backend. Use the category "Apps > Windows Terminal (Preview)" and choose "Share My Feedback" after submission to get the link. Please use this form and describe your issue, concisely but precisely, with as much detail as possible. --> # Environment ```none Windows build number: Microsoft Windows [Version 10.0.19042.423] Windows Terminal version (if applicable): 1.1.2021.0 Any other software? Git for windows: v2.28.0 ``` # Steps to reproduce 1. Open a "GIT Bash" terminal session 2. Press backspace key 3. ![BashFlicker](https://user-images.githubusercontent.com/966863/89535209-02f4b000-d7ee-11ea-96c5-ae16ad043871.gif) # Expected behavior No nasty flicker # Actual behavior Nasty flicker
claunia added the Needs-TriageNeeds-Tag-FixNeeds-Attention labels 2026-01-31 02:10:57 +00:00
Author
Owner

@zadjii-msft commented on GitHub (Aug 6, 2020):

That looks to me like they're using the "visual bell". Is there anything about bell-style in your ~/.inputrc or /etc/inputrc?

@zadjii-msft commented on GitHub (Aug 6, 2020): That looks to me like they're using the "visual bell". Is there anything about `bell-style` in your `~/.inputrc` or `/etc/inputrc`?
Author
Owner

@GordonSmith commented on GitHub (Aug 6, 2020):

I don't have a ~/.inputrc file and this is GIT Bash on windows so no /etc folder either - but I suspect you are correct as it does correlate with when I might normally hear a "bing".

@GordonSmith commented on GitHub (Aug 6, 2020): I don't have a `~/.inputrc` file and this is GIT Bash on windows so no `/etc` folder either - but I suspect you are correct as it does correlate with when I might normally hear a "bing".
Author
Owner

@KalleOlaviNiemitalo commented on GitHub (Aug 6, 2020):

Git for Windows does install an /etc directory (perhaps mapped to C:\Program Files\Git\etc) and an /etc/inputrc file that includes set bell-style visible.

https://github.com/git-for-windows/build-extra/blob/1227299bc78df003c3b246edbd04a583ac162dc7/git-extra/inputrc#L1-L2

@KalleOlaviNiemitalo commented on GitHub (Aug 6, 2020): Git for Windows does install an `/etc` directory (perhaps mapped to `C:\Program Files\Git\etc`) and an `/etc/inputrc` file that includes `set bell-style visible`. <https://github.com/git-for-windows/build-extra/blob/1227299bc78df003c3b246edbd04a583ac162dc7/git-extra/inputrc#L1-L2>
Author
Owner

@GordonSmith commented on GitHub (Aug 6, 2020):

Ok - I will close invalid - can it be disabled in Terminal settings, or do I need to do the local /etc/inputrc?

@GordonSmith commented on GitHub (Aug 6, 2020): Ok - I will close invalid - can it be disabled in Terminal settings, or do I need to do the local `/etc/inputrc`?
Author
Owner

@GordonSmith commented on GitHub (Aug 6, 2020):

Closing invalid - Terminal is honouring inputrc settings...

@GordonSmith commented on GitHub (Aug 6, 2020): Closing invalid - Terminal is honouring inputrc settings...
Author
Owner

@KalleOlaviNiemitalo commented on GitHub (Aug 6, 2020):

I believe the visual bell uses the flash capability from terminfo. For xterm-256color, the value is \E[?5h$<100/>\E[?5l. AFAIK, Windows Terminal does not provide a way to disable the \E[?5h and \E[?5l control sequences. It might be best to set bell-style audible or set bell-style none in ~/.inputrc so that the setting will survive Git for Windows upgrades.

@KalleOlaviNiemitalo commented on GitHub (Aug 6, 2020): I believe the visual bell uses the `flash` capability from terminfo. For `xterm-256color`, the value is `\E[?5h$<100/>\E[?5l`. AFAIK, Windows Terminal does not provide a way to disable the `\E[?5h` and `\E[?5l` control sequences. It might be best to `set bell-style audible` or `set bell-style none` in `~/.inputrc` so that the setting will survive Git for Windows upgrades.
Author
Owner

@KalleOlaviNiemitalo commented on GitHub (Aug 6, 2020):

On the other hand, if DECSCNM is primarily used for visual bell, then it might make sense for Windows Terminal to disable it when animations are disabled according to SystemParametersInfo SPI_GETCLIENTAREAANIMATION.

@KalleOlaviNiemitalo commented on GitHub (Aug 6, 2020): On the other hand, if DECSCNM is primarily used for visual bell, then it might make sense for Windows Terminal to disable it when animations are disabled according to [SystemParametersInfo SPI_GETCLIENTAREAANIMATION](https://docs.microsoft.com/windows/win32/api/winuser/nf-winuser-systemparametersinfow#spi_getclientareaanimation).
Author
Owner

@thomasaarholt commented on GitHub (Aug 12, 2020):

To fix: nano ~/.inputrc and add the text set bell-style none or set bell-style audible. Press Ctrl + O and Ctrl + X to Save and Exit.

I found this behaviour to be really distracting/disurbing.
The regular Git Bash terminal does exhibit this behaviour, though I can confirm that /c/Program Files/Git/etc/.inputrc does contain set bell-style visible (and that command is not overwritten by anything in .inputrc.

Note that set bell-style audible does not give a ping sound in Git Bash in Windows Terminal, but it does do so in regular Git Bash.

@thomasaarholt commented on GitHub (Aug 12, 2020): To fix: `nano ~/.inputrc` and add the text `set bell-style none` or `set bell-style audible`. Press `Ctrl + O` and `Ctrl + X` to Save and Exit. I found this behaviour to be really distracting/disurbing. The regular Git Bash terminal does exhibit this behaviour, though I can confirm that `/c/Program Files/Git/etc/.inputrc` does contain `set bell-style visible` (and that command is not overwritten by anything in `.inputrc`. Note that `set bell-style audible` does not give a ping sound in Git Bash in Windows Terminal, but it does do so in regular Git Bash.
Author
Owner

@DHowett commented on GitHub (Aug 12, 2020):

So, that’s because we only recently got support for visual bells at all. There’s an escape sequence that inverts the entire screen, and a visual bell is typically implemented by sending it, waiting a bit, and then sending it again.

Git Bash will start doing this inbox in Windows at some point with the next Desktop release, as it is required by standard for us to support it.

@DHowett commented on GitHub (Aug 12, 2020): So, that’s because we only recently got support for visual bells at all. There’s an escape sequence that inverts the entire screen, and a visual bell is typically implemented by sending it, waiting a bit, and then sending it again. Git Bash will start doing this inbox in Windows at some point with the next Desktop release, as it is required by standard for us to support it.
Author
Owner

@KalleOlaviNiemitalo commented on GitHub (Aug 12, 2020):

set bell-style audible does not give a ping sound in Git Bash in Windows Terminal

Seemingly covered by https://github.com/microsoft/terminal/issues/1608 and https://github.com/microsoft/terminal/issues/4046.

@KalleOlaviNiemitalo commented on GitHub (Aug 12, 2020): > `set bell-style audible` does not give a ping sound in Git Bash in Windows Terminal Seemingly covered by <https://github.com/microsoft/terminal/issues/1608> and <https://github.com/microsoft/terminal/issues/4046>.
Author
Owner

@fzzio commented on GitHub (May 11, 2021):

Thank you!

@fzzio commented on GitHub (May 11, 2021): Thank you!
Author
Owner

@rluvaton commented on GitHub (Sep 11, 2021):

I keep coming back here way too many times 🤣

@rluvaton commented on GitHub (Sep 11, 2021): I keep coming back here way too many times 🤣
Author
Owner

@lingyanmeng commented on GitHub (Oct 27, 2021):

Although the backspace is fixed, I still met the same issue during vi editing in git bash, and the workaround mentioned above is not working

@lingyanmeng commented on GitHub (Oct 27, 2021): Although the backspace is fixed, I still met the same issue during vi editing in git bash, and the workaround mentioned above is not working
Author
Owner

@brighamandersen commented on GitHub (Dec 22, 2021):

If anyone has issues saying 'Permission Denied' when you try to save your changes, make sure that when you open your terminal to open inputrc in nano (Git Bash for me), you run your terminal as administrator.

@brighamandersen commented on GitHub (Dec 22, 2021): If anyone has issues saying 'Permission Denied' when you try to save your changes, make sure that when you open your terminal to open `inputrc` in nano (Git Bash for me), you run your terminal as administrator.
Author
Owner

@MachineLearning-Nerd commented on GitHub (Jan 28, 2022):

Although the backspace is fixed, I still met the same issue during vi editing in git bash, and the workaround mentioned above is not working

set t_vb=

in .vimrc

@MachineLearning-Nerd commented on GitHub (Jan 28, 2022): > Although the backspace is fixed, I still met the same issue during vi editing in git bash, and the workaround mentioned above is not working `set t_vb=` in .vimrc
Author
Owner

@danfly09 commented on GitHub (Apr 22, 2022):

I just made a copy to my local folder and commented that bell style line as follows

cd go to your home directory
cat /etc/inputrc > .inputrc print inputrc content to .inputrc file in your home directory... don't forget the DOT

Now edit your local file
set bell-style visible before
# set bell-style visible after

Restart your shell.

@danfly09 commented on GitHub (Apr 22, 2022): I just made a copy to my local folder and commented that bell style line as follows `cd` go to your home directory `cat /etc/inputrc > .inputrc` print inputrc content to .inputrc file in your home directory... don't forget the DOT Now edit your local file `set bell-style visible` before `# set bell-style visible` after Restart your shell.
Author
Owner

@ToxicSmurf commented on GitHub (Jun 4, 2022):

This little quirk was the main reason I wasn't using Git bash on Windows Terminal as my default shell, now I have no reason…

Thank you!!

@ToxicSmurf commented on GitHub (Jun 4, 2022): This little quirk was the main reason I wasn't using Git bash on Windows Terminal as my default shell, now I have no reason… Thank you!!
Author
Owner

@xudyang1 commented on GitHub (Sep 10, 2024):

For those who don't want a .inputrc polluting your home directory, add the following to your .bashrc file:

bind 'set bell-style none'
# or bind 'set bell-style audible'
@xudyang1 commented on GitHub (Sep 10, 2024): For those who don't want a `.inputrc` polluting your home directory, add the following to your `.bashrc` file: ```bash bind 'set bell-style none' # or bind 'set bell-style audible' ```
Author
Owner

@opensuse1 commented on GitHub (Jan 28, 2025):

https://www.youtube.com/watch?v=VxHT88haAPU&t=162s

@opensuse1 commented on GitHub (Jan 28, 2025): https://www.youtube.com/watch?v=VxHT88haAPU&t=162s
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#10038