static VSEditor() { try { InstalledVisualStudios = Discovery.GetInstalledVisualStudios(); } catch (Exception ex) { UnityEngine.Debug.Log($@"Error detecting Visual Studio installations: {ex.Message}{Environment.NewLine}{ex.StackTrace}"); InstalledVisualStudios = new Dictionary <VisualStudioVersion, string[]>(); } var editor = new VSEditor(new Discovery(), new ProjectGeneration()); CodeEditor.Register(editor); var current = CodeEditor.CurrentEditorInstallation; if (editor.TryGetInstallationForPath(current, out var installation)) { if (installation.Name != "MonoDevelop") { editor.Initialize(current); } return; } }
public CodeEditor.Installation[] PathCallback() { try { return(VSEditor.GetInstalledVisualStudios().Select(pair => new CodeEditor.Installation { Path = pair.Value[0], Name = VisualStudioVersionToNiceName(pair.Key) }).ToArray()); } catch (Exception ex) { Debug.Log($"Error detecting Visual Studio installations: {ex.Message}{Environment.NewLine}{ex.StackTrace}"); return(new CodeEditor.Installation[0]); } }