Is there any way to disable the new text cursor in macOS Sonoma? The caps lock indicator is kind of distracting.
5 Answers
Simplifying the code yet further, you can just do:
sudo defaults write /Library/Preferences/FeatureFlags/Domain/UIKit.plist redesigned_text_cursor -dict-add Enabled -bool NO The folders will be created if not existing.
You'll still need a restart.
6 Comments
sudo defaults delete /Library/Preferences/FeatureFlags/Domain/UIKit.plist redesigned_text_cursorThanks to stephancasas for the explanation and the solution. Another way of implementing it, from Terminal:
sudo mkdir -p /Library/Preferences/FeatureFlags/Domain sudo /usr/libexec/PlistBuddy -c "Add 'redesigned_text_cursor:Enabled' bool false" /Library/Preferences/FeatureFlags/Domain/UIKit.plist Reboot for the change to take effect.
1 Comment
The redesigned insertion point in macOS Sonoma can be disabled by setting an OS feature flag for UIKit/redesigned_text_cursor/Enabled. You can use the JXA script below to create the PLIST with the required values. Just copy everything into Script Editor, change the language to JavaScript, and press play:
#!/usr/bin/env osascript -l JavaScript const App = Application.currentApplication(); App.includeStandardAdditions = true; const kCFPrefsFeatureFlagsDir = '/Library/Preferences/FeatureFlags/Domain'; const kCFPrefsFeatureEnabledKey = 'Enabled'; const kUIKitDomainPrefsTemporaryPath = '/tmp/UIKit.plist'; const kUIKitRedesignedTextCursorKey = 'redesigned_text_cursor'; function run(_) { const dict = $.NSMutableDictionary.new; const enabled = $.NSMutableDictionary.new; enabled.setValueForKey(false, kCFPrefsFeatureEnabledKey); dict.setValueForKey(enabled, kUIKitRedesignedTextCursorKey); const error = $(); dict.writeToURLError( $.NSURL.fileURLWithPath(kUIKitDomainPrefsTemporaryPath), error, ); if (typeof error.js != 'undefined') { return `🫤: ${error.localizedDescription}`; } return App.doShellScript( [ `mkdir -p '${kCFPrefsFeatureFlagsDir}'`, `mv '${kUIKitDomainPrefsTemporaryPath}' '${kCFPrefsFeatureFlagsDir}'`, ].join(' && '), { administratorPrivileges: true, }, ).length == 0 ? '😃' : '🫤'; } 6 Comments
osascript whatever.js A password popup will appear, then show the smiley face if all goes well. As mentioned, reboot (maybe relog, reboot for good measure :)).CursorUIViewService process and started looking for caps lock-related instructions. Apple uses pretty consistent naming patterns for their symbols, so if you know what you want to achieve, you can narrow-down to the likely procedures in pretty short order. As for what process I knew to look debug, I go into detail on that here.You can try this to disable Input Source Switching Popup as of Dec 6, 2023:
Open Terminal app and type:
defaults write kCFPreferencesAnyApplication TSMLanguageIndicatorEnabled 0Press Return and restart your machine afterwards.
1 Comment
Toggle in
Onyx – Parameters – Misc. - Show the caps lock indicator
and Deeper – Misc. - Show the caps lock indicator
https://www.titanium-software.fr/en/applications.html
OnyX 4.5.5
• Added option to hide or show the caps lock indicator https://www.titanium-software.fr/en/onyx_release.html
Deeper 3.0.4
• Added option to hide or show the caps lock indicator