rider2emacs
rider2emacs copied to clipboard
Rider2Emacs is not working on OSX
I could open files using rider2emacs <filename>
on my iTerm, but when I configure Unity to use rider2emacs, it doesn't work... nothing happens.
The biggest problem is that I don't know where to look for some error message or something like that.
My emacsclient
is in my $PATH
:
I am having the same issue. Everything used to be working for me, not sure if it was a unity change or what, but now when I select it in the Unity Editor Tools section, none of the .csproj generation settings pop up, and when I try to open something from Unity it no longer does anything.
I'm not sure why they would explicitly target the tiny percentage of their users who use emacs so I wonder what they did to break this...
In Monterey, you even cannot select the rider2emacs binary, it restricts you to Applications with .app extension. That can be worked around by creating a pseudo-app wrapping the binary via a shell script and providing this to Unity. This works in the sense that Unity then opens source files in Emacs, but with no options (eg no column/line number). It also complains as follows (despite opening the file):
External Code Editor application path does not exist (/Applications/rider2emacs.app)! Please select a different application
UnityEditor.DefaultExternalCodeEditor:OpenProject (string,int,int)
Unity.CodeEditor.CodeEditor:OnOpenAsset (int,int,int) (at /Users/bokken/buildslave/unity/build/Editor/Mono/CodeEditor/CodeEditor.cs:70)
UnityEngine.GUIUtility:ProcessEvent (int,intptr) (at /Users/bokken/buildslave/unity/build/Modules/IMGUI/GUIUtility.cs:197)
The worst - that has already been mentioned by others - is that it doesn't consider this external script as a rider installation and so does not enable the expected functionality. I suspect it is a naming issue, it must expect a filename/directory structure to assess an external tool is Jetbrains Rider, but I don't know what it checks for.
Any help greatly appreciated :)
For what it's worth, here the little bash shell script I wrapped into an application, so you get at least the possibility to open source code files, even though not at a specified (error) location. I also write a log file for debugging. I explicitly set the path to emacsclient as it did not pick it up from the shell for some reason.
# Access the input file through the $1 variable
PATH=/Users/baaden/bin/:$PATH /Users/baaden/bin/rider2emacs "$@" &> /Users/baaden/log/rider2emacs.log
echo "Running rider2emacs with arguments $*" >> /Users/baaden/log/rider2emacs.log
You can wrap this to an application with Automator on Mac. I join mine but not sure how portable that is among machines (and of course you need to change the path).