Terminal: Add support for turning off cursor blink

Created on 22 Jun 2019  Â·  30Comments  Â·  Source: microsoft/terminal

I don't link blinking cursor on terminal.
so I have tried to stop blink of cursor from settings but there is no option to do it.
How to disable blink of cursor?

Area-Settings Area-TerminalControl Help Wanted Issue-Task Product-Terminal

Most helpful comment

Possibly relevant: is it possible to make the filledBox cursor transparent? Right now (at least in my case) the box is opaque while emptyBox just doesn't have the same feel to what I'm used to (a block which still displays what's under it).

How it looks in Windows Terminal:

image

How it looks in other terminals (in this case alacritty):

image

All 30 comments

I just set the cursor color to match the background color so it would be invisible, I couldn't find any other way to either remove it or stop it from blinking, but I hope this helps you

Go into the Control Panel and search for Blink.

Seconding a request for this setting.

also I would love to see an option to make it look like that box cursor that we have in linux terminal, I think that would be a nice feature

What, you mean this?
image

Set your cursor to filledBox.

What, you mean this?
image

Set your cursor to filledBox.

Hey, thanks! I didn't know the different cursor names

The cursor blinking can be turned off (system-wide) by going to Keyboard Properties in the Control Panel and turning the cursor blink rate all the way down:

image

Would it be useful to disable the cursor blinking for just the terminal app?

I want to disable it in terminal app only

2019年7月1日(月) 7:19 David Teresi notifications@github.com:

The cursor blinking can be turned off (system-wide) by going to Keyboard
Properties in the Control Panel and turning the cursor blink rate all the
way down:

[image: image]
https://user-images.githubusercontent.com/34610081/60402879-67612c80-9b63-11e9-9b5a-00ab549f2327.png

Would it be useful to disable the cursor blinking for just the terminal
app?

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/terminal/issues/1379?email_source=notifications&email_token=AB4HIGH7WYVJYUIZT2IBEPTP5EWQRA5CNFSM4H2V6GEKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODY4U4XY#issuecomment-507072095,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AB4HIGDR33VYEXMMWRVPS5LP5EWQRANCNFSM4H2V6GEA
.

Agreed that this should be a distinct option just for the terminal app. Here's how it can be configured in mintty:

image

Note the distinct config fields for cursor shape and whether to blink.

@DHowett-MSFT I've tried write some code to disable it.
But it looks like there are some error.

  1. IDE has indicated redefinition of method definition of UseBlinkCursor in TerminalSettings.cpp despite I have defined just one time
  2. IKeyBindings, IKeyChord in cascadia\TerminalApp\AppKeyBindings.idl unresolved type declaration.

How to fix it?

https://github.com/KiYugadgeter/terminal/tree/my_build

Any ETA to add this?

@hwo411 Nope - It's marked as "Terminal Backlog", which means we don't think we're going to get to it ourselves before we release a 1.0 version of the terminal.

It's also marked "Help-Wanted", so if someone's feeling particularly passionate about this, they should feel free to build a solution themselves, and we'd happily review a PR 😉

@zadjii-msft thanks for explanation!

@skyline75489 created PR for this feature: https://github.com/microsoft/terminal/pull/2892

Blinking is only binary on/off option, so how about merging blinking attribute and cursor shape attribute into one attribute, like "filledbox" vs "static-filledbox", or "blinking-filledbox" vs "filledbox"?

The name "solid" for non-blinking cursor is confusing. Normally "solid box" means "filledbox". So "solid-emptybox" may be confusing. I prefer "static" as non-blinking attribute name.

The cursor name "filledbox" is rather strange too. I suggest to use name like "solidbox" or "fullbox" (Unicode name) for current "filledbox" attribute value name.

The cursor name "vintage" is also not intuitive. How about " quarterblock"?

Most people will use just one of "static-solidbox" or "blinking-bar". IMHO, default should be static and solidbox (filledbox). And if wt window lose input focus, cursor should stop blinking and turn into static-emptybox.

EDIT: Hmm, #2892 seems to be more appropriate thread.

Possibly relevant: is it possible to make the filledBox cursor transparent? Right now (at least in my case) the box is opaque while emptyBox just doesn't have the same feel to what I'm used to (a block which still displays what's under it).

How it looks in Windows Terminal:

image

How it looks in other terminals (in this case alacritty):

image

Go into the Control Panel and search for Blink.

Disabling cursor blinking system wide causes Windows taskbar icon notifications not blink and not disappear. This broken Windows functionality prevents users from disabling cursor blinking. Since this issue exists for years, nobody is going to fix it in Windows. Hence, unfortunately, cursor blink rates should be controlled by applications.

Lack of this feature in Windows Terminal is the only thing that prevents me from switching to Windows Terminal completely.

If blinking becomes a cursor type or state, could there be an option for both a binary on and off, as well as an animated fade for the cursor?

@mdtauk could you maybe point to an example of a program with an animated fading cursor? I'm not sure what exactly you're proposing.

I can't, but it would look smoother, and I think would work well with the vintage terminal visual effects. It only needs to be a few frames of the cursor fading in and then out again

I second this request. Please add a way to turn off blinking cursor in terminal without resorting to any system-wide hack. Thanks in advance, I would really like to have this feature added to this great app.

without resorting to any system-wide hack.

The problem is that there is no acceptable system-wide hack to resort to. If you disable cursor blink globally, you'll end up with broken taskbar icon notifications. Icons will glow orange permanently.

permanently

"Until you interact with them, clearing their urgency state."

without resorting to any system-wide hack.

The problem is that there is no acceptable system-wide hack to resort to. If you disable cursor blink globally, you'll end up with broken taskbar icon notifications. Icons will glow orange permanently.

My point exactly.

permanently

"Until you interact with them, clearing their urgency state."

No! This is the annoyance exactly. The state is not cleared after interaction, they stay orange. I found a workaround, switch to another desktop and back, but this is still an annoyance.

The original reason for a blinking cursor was that a thin vertical line was not very noticeable. But this is not applicable to a solid filled box with inverse video. It is very visible. Adding blinking makes it too visible to the point of distraction. For this reason a system settings that assumes a thin line should not apply when the cursor is a filled box.

This suggest that blinking or not should be a part of cursor shape.

The original reason for a blinking cursor was that a thin vertical line was not very noticeable. But this is not applicable to a solid filled box with inverse video. It is very visible. Adding blinking makes it too visible to the point of distraction. For this reason a system settings that assumes a thin line should not apply when the cursor is a filled box.

This suggest that blinking or not should be a part of cursor shape.

I agree with you, but not everyone is the same (due to personality differences), someone may want a flashing big box and think its perfect. An independat settings would mean everyone is then happy. Unfortunately WT does not support inverse video yet, so this is not the case (there are times when th==my white cursor is on light text and I can barely see it, and if on white then not at all).

What is the status on this? I'd really prefer to not have a blinking cursor within Windows Terminal (and Emacs, which to my knowledge cannot turn off this functionality as it's driven by the shell).

Was this page helpful?
0 / 5 - 0 ratings

Related issues

miniksa picture miniksa  Â·  3Comments

wkbrd picture wkbrd  Â·  3Comments

NickITGuy picture NickITGuy  Â·  3Comments

mrmlnc picture mrmlnc  Â·  3Comments

ghost picture ghost  Â·  3Comments