diff --git a/Editor/ZedDiscovery.cs b/Editor/ZedDiscovery.cs index eceb725..296ba8d 100644 --- a/Editor/ZedDiscovery.cs +++ b/Editor/ZedDiscovery.cs @@ -33,6 +33,9 @@ public CodeEditor.Installation[] GetInstallations() // [Linux] (Official Website) (NPath.HomeDirectory.Combine(".local/bin/zed"), null), + + // [Windows] (Official Website) + (NPath.HomeDirectory.Combine("AppData/Local/Programs/Zed/Zed.exe"), null), }; foreach (var candidate in candidates) @@ -50,7 +53,7 @@ public CodeEditor.Installation[] GetInstallations() results.Add(new() { Name = name.ToString(), - Path = candidatePath.MakeAbsolute().ToString(), + Path = candidatePath.MakeAbsolute().ToString(SlashMode.Native), }); break; diff --git a/Editor/ZedProcess.cs b/Editor/ZedProcess.cs index cdc77a9..54f1d82 100644 --- a/Editor/ZedProcess.cs +++ b/Editor/ZedProcess.cs @@ -23,13 +23,17 @@ public bool OpenProject(string filePath = "", int line = -1, int column = -1) sLogger.Log("OpenProject"); // always add project path - var args = new StringBuilder($"\"{m_ProjectPath}\""); + var args = new StringBuilder($"\"{m_ProjectPath.ToString(SlashMode.Native)}\""); // if file path is provided, add it too if (!string.IsNullOrEmpty(filePath)) { +#if UNITY_EDITOR_WIN + args.Append(" /a "); +#else args.Append(" -a "); - args.Append($"\"{filePath}\""); +#endif + args.Append($"\"{filePath}"); if (line >= 0) { @@ -42,9 +46,10 @@ public bool OpenProject(string filePath = "", int line = -1, int column = -1) args.Append(column); } } + args.Append("\""); } - return CodeEditor.OSOpenFile(m_ExecPath.ToString(), args.ToString()); + return CodeEditor.OSOpenFile(m_ExecPath.ToString(SlashMode.Native), args.ToString()); } } }