Я создал очень простую надстройку Visual Studio, как в этой статье JP Booodhoo.
http://codebetter.com/jpboodhoo/2007/09/04/macro-to-aid-bdd-test-naming-style/
Надстройка работает в режиме отладки, поэтому, если я нажму F5 в добавлении решения и открою решение, надстройка отобразится в инструментах. Однако он не отображается, если не выполняется отладка. то есть после того, как я развернул надстройку, закрыл и снова открыл свое решение.
Я что-то упускаю?
Что касается развертывания, я выполнил шаги развертывания, описанные в этой статье, и развернул его в папку C:\Users[ваше имя пользователя]\Documents\Visual Studio 2012\Addins.
Альтернатива макросам в Visual Studio 2012
public void Exec(string commandName, vsCommandExecOption executeOption, ref object varIn, ref object varOut, ref bool handled)
{
handled = false;
if(executeOption == vsCommandExecOption.vsCommandExecOptionDoDefault)
{
if(commandName == "KinghamExtensions.Connect.KinghamExtensions")
{
var selection = (TextSelection)(_applicationObject.ActiveDocument.Selection);
selection.SelectLine();
if (selection.Text == "") return;
var prefix = "public void ";
var index = selection.Text.IndexOf(prefix);
prefix = selection.Text.Substring(0, index) + prefix;
var description = selection.Text.Replace(prefix, String.Empty);
selection.Text = prefix + description.Replace(" ", "_").Replace("'", "_");
selection.LineDown();
selection.EndOfLine();
handled = true;
}
}
}
Как я уже сказал, код работает при запуске надстройки из vs в отладке, но не отображается в меню инструментов.
Кроме того, он не отображается в параметрах клавиатуры, как это делает надстройка Git Extensions, что означает, что я не могу назначить привязку клавиш.
Есть предположения?