public void Handle(Guid clientID, CommandMessage message) { if (message.Arguments.Count != 1) return; var position = new OpenIDE.Core.CommandBuilding.FilePosition(message.Arguments[0]); var extension = Path.GetExtension(position.Fullpath); var language = new PluginFinder(_cache).FindLanguage(extension); if (language == null) return; var plugin = _pluginLocator.Locate() .FirstOrDefault(x => x.GetLanguage() == language); if (plugin == null) return; var signature = plugin.SignatureFromPosition(position); if (signature == null) return; var codeRef = _cache.AllSignatures() .FirstOrDefault(x => x.Signature == signature.Signature && x.File == signature.File); if (codeRef == null) return; _endpoint.Editor.Send( string.Format("goto \"{0}|{1}|{2}\"", codeRef.File, codeRef.Line, codeRef.Column)); }
public void Handle(Guid clientID, CommandMessage message) { var arguments = message.Arguments.ToArray(); if (arguments.Length < 2) return; var language = new PluginFinder(_cache).FindLanguage(arguments[0]); if (language == null) return; var file = getLocal(arguments); if (!File.Exists(file)) file = getGlobal(arguments); if (!File.Exists(file)) return; File.Delete(file); }
public void Handle(Guid clientID, CommandMessage message) { var arguments = message.Arguments.ToArray(); if (arguments.Length < 2) return; var language = new PluginFinder(_cache).FindLanguage(arguments[0]); if (language == null) return; var file = getLocal(arguments); if (!File.Exists(file)) file = getGlobal(arguments); if (!File.Exists(file)) return; _endpoint.Editor.Send(string.Format("goto \"{0}|0|0\"", file)); }