Only partial Syntax Highlighting for Unreal Follow
Hi there -
I can't seem to figure out how to get useful syntax highlighting working in Rider. I've just switched over from Visual Studio to try Rider out with an Unreal 5 project.
In this image, you can see I'm getting highlighting for comments, keywords and strings just fine. However, classes, functions, variables are all staying as white in the editor, though interestingly are colored correctly in all popups when I mouseover. Unused local variables also get colored, but not to any of the colors I've setup through settings, just to a theme default.
Here's what I've tried:
- Changing colors in Editor->Color Scheme->Language Defaults
- Changing colors in Editor->Color Scheme->C++
- Changing themes from Rider Dark to Rider Light
- Deleting my Unreal cached folders (like intermediate, .vs, etc) and rebuilding
- Creating a brand new Unreal 5.1 project, adding a single Class in the Editor and then Configuring and Opening Rider from inside Unreal (with the Rider plugin enabled)
- Changing inspection highlight levels and confirming that inspections are running
- Resetting all Rider settings and repeating all of the above
- Building a quick C# .Net Core project, and noting that all syntax coloring works just fine in C#
That's it though - I'm out of ideas :)
Does anyone have anything obvious I might have missed here? Thanks in advance for your help!
Please sign in to leave a comment.
Hello Dave,
Thank you for contacting Rider support.
Please check if you have this
OFF
written on the top-right corner of the editor. Try setting it toAll Problems
as shown on the screenshot.If it doesn't help, would you mind sharing Rider full-screen screenshot that demonstrates the issue?
Have a nice day!
Thanks Dmitry -
It isn't that, I already had that on and had previously tried the options in that dropdown.
And here's another shot where the overlay detailing the method is showing my set colors while the editor is sticking to white for classes, functions, structs, etc.
Hello Dave,
Thank you for the details shared.
Do you experience this lack of highlighting in any unreal-related C++ code or only specific files/pieces of code?
Would you mind sharing the additional information as described below?
Daemon
andEditors
trace scenarios viaHelp | Diagnostic Tools | Choose trace scenario
;%LOCALAPPDATA%\JetBrains\Rider{version}\log
folder;Help | Collect Logs
;Thank you in advance and have a nice day!
Good morning Dmitry :)
This happens in all Unreal C++ files - I made an entirely new Unreal 5.1 project and added a simple C++ class to it. The same issue was present in both the .h and .cpp files. (That was done after a full reset of Rider's settings and only changing the color of functions for Default Language and then C++ with and without inheritance).
Log files sent via Upload Service:
Upload id: 2022_11_24_26aAQSzTAhYhSgQQUhhSHP (file: rider-logs-20221124-0942533167230598918207693.zip)
Thanks again!
Hello Dave,
Thank you for the details shared. Regrettably, still it is not clear, what causes such an issue.
Would you mind sharing the additional information as decribed below?
Thank you in advance and have a nice day!
Hi again -
I've generated and uploaded the Xml:
Upload id: 2022_11_24_9ZXJK7RbwzQyAu9u7EEicT (file: DumpHighlighters20221124-13-06-486022166478397345954.txt)
Note that enabling internal tools and heading through the menus towards Markup Actions produced a non-fatal stack trace, pasted below for completeness:
java.lang.Throwable: Empty menu item text for ToggleMarkupDebugModeAction@MainMenu (com.jetbrains.rdclient.daemon.diagnostics.ToggleMarkupDebugModeAction). The default action text must be specified in plugin.xml or its class constructor
at com.intellij.openapi.diagnostic.Logger.error(Logger.java:184)
at com.intellij.openapi.actionSystem.impl.Utils.fillMenuInner(Utils.java:389)
at com.intellij.openapi.actionSystem.impl.Utils.fillMenu(Utils.java:321)
at com.intellij.openapi.actionSystem.impl.ActionMenu.fillMenu(ActionMenu.java:439)
at com.intellij.openapi.actionSystem.impl.ActionMenu.setPopupMenuVisible(ActionMenu.java:384)
at java.desktop/javax.swing.JPopupMenu.menuSelectionChanged(JPopupMenu.java:1509)
at java.desktop/javax.swing.MenuSelectionManager.setSelectedPath(MenuSelectionManager.java:134)
at java.desktop/javax.swing.plaf.basic.BasicMenuUI.appendPath(BasicMenuUI.java:264)
at java.desktop/javax.swing.plaf.basic.BasicMenuUI$Actions.actionPerformed(BasicMenuUI.java:322)
at java.desktop/javax.swing.Timer.fireActionPerformed(Timer.java:311)
at java.desktop/javax.swing.Timer$DoPostEvent.run(Timer.java:243)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:779)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:730)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:724)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:749)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:918)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:766)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$6(IdeEventQueue.java:450)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:791)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$7(IdeEventQueue.java:449)
at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:105)
at com.intellij.ide.IdeEventQueue.performActivity(IdeEventQueue.java:624)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:447)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:881)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:493)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:92)
Thanks again!
Thank you for the details shared.
Would you mind trying the following options and letting me know if any of them helps?
* Clear caches via `File | Invalidate Caches`;
* Open your project via .uproject file instead of .sln; (`File | Open | Open | {select your .uproject file}`;
* Try installing the latest version of [Rider EAP](https://www.jetbrains.com/rider/nextversion/) and check if the issue persists;
If it doesn't help, please try creating a template non-UE C++ console application and let me know would the code highlighting appear there?
Thank you in advance and have a nice day!
We have a winner Dmitry Kazantsev!
Invalidating (all) Caches and Opening via .uproject didn't help, but installing the EAP9 2022.3 version did.
Fresh from install it didn't work, but using the settings to override Visual Studio colorings within Inspections sorted it out.
I ticked "Color Identifiers" here and the default color scheme immediately appeared as expected.
I also checked setting a custom color (yellow in the screenshot) on Class Names. which worked fine too.
Thanks for all your help with this!
Hello Dave,
I am happy to hear that we came up with a solution.
This issue relates to this one. I added a comment to this issue. There is a problem with
File | Settings | Languages & Frameworks | C++ | Inspections | Color Identifiers
setting.We would appreciate it if you could upvote this issue to demonstrate the additional interest.
Should you have any other questions or difficulties in the future, do not hesitate to contact support.
Have a nice day!