A minority of people cannot work with blinking or flashing cursors. In today's globalized community even a “minority” is still a lot of people. Yet software providers often ignore these peoples' needs.
Apple used to respect such people, and prior to OS X provided a means of turning off cursor blink globally across all applications. This feature was dropped with OS X. Now it is only possible to turn off cursor blink on some applications—and this must be done on a case-by-case basis.
Microsoft built cursor blink into MS-DOS and then into Windows. However, even from Windows 3, it was possible to work around this. I wrote a tiny program that executed in the background and that every 0.5 seconds reset the cursor blink rate to 0. This stopped cursor blink in all Windows applications that used the standard Windows APIs; although ironically this meant that the cursor disappeared in Word and continued to blink in Excel. Since 2000, Microsoft has respected the needs of people who can't work with blinking cursors and allows cursor blink to be turned off globally.
In the Linux world, all decent terminals have long offered the user the choice of blinking or non-blinking cursors. And most Linux Window systems also provide a global solution—at least for applications written for the particular Window system the user is using. Thus, it is possible to globally turn off cursor blink for all GNOME 2 applications (I don't use or know about GNOME 3), and for KDE applications that are based on Qt 3 or Qt 4.
For more information about turning off cursor blink see
www.jurta.org/en/prog/noblink.
Although the JURTA site is very useful, it doesn't help with
applications that use Tcl/Tk's themed widgets (which have cursor blink
but which don't respect the insertOffTime
option), or with
Qt 5.0.0 applications which take their blink rate from the theme
and seem to ignore user preferences. In both cases a solution is
possible, but involves rebuilding these libraries from source.
Note that more modern Qt 5 versions do respect the user's blink
rate—but only on Windows.
This can be achieved for “classic” and ttk
widgets with
these two commands:
option add *insertOffTime 0 ttk::style configure . -insertofftime 0
Use the Qt Config application (qt5ct
or qt6ct
)
and set the Cursor flash time in the Interface tab to 0.
Your Privacy • Copyright © 2006 Mark Summerfield. All Rights Reserved.