Как добавить visual studio code в контекстное меню

Обновлено: 07.07.2024

Как показать код меню в Visual Studio?

Как открыть код VS в папке?

Открыть любой код

Как добавить код в переменную среды в Visual Studio?

Как открыть папку Visual Studio?

Как установить визуальный код?

Как установить Visual Studio Code на macOS?

Как переместить VS в код терминала?

Вы можете просто удерживать ctrl + shift, а затем, нажав i, вы переместите ваш фокус вперед и назад. Если вы хотите, чтобы Ctrl + `переключался между терминалом и текстовым редактором, сделайте следующее: Откройте привязку клавиш. json: Ctrl + Shift + P, затем выберите Настройки: Открыть сочетания клавиш (JSON).

Что такое код сброса к заводским настройкам для Visual Studio?

Если вы хотите все сбросить, перейдите в% userprofile% AppData Roaming Code и удалите всю папку после удаления кода VS, затем установите его снова. Также в% userprofile% . vscode удалить папку расширений, если вы хотите удалить все расширения.

Как вы используете код VS?

Начало работы с Visual Studio Code

  1. Загрузите и установите VS Code.
  2. Создайте новый файл.
  3. См. Обзор пользовательского интерфейса.
  4. Установите поддержку вашего любимого языка программирования.
  5. Измените сочетания клавиш и легко переходите с других редакторов с помощью расширений для привязки клавиш.
  6. Настройте свой редактор с помощью тем.

Как мне ввести код в терминал?

Запуск из командной строки

Запуск VS Code из терминала выглядит круто. Для этого нажмите CMD + SHIFT + P, введите команду оболочки и выберите команду Установить код в пути. После этого перейдите к любому проекту из терминала и введите код. из каталога для запуска проекта с помощью VS Code.

Как открыть несколько вкладок в коде Visual Studio?

Открыть несколько вкладок в VS Code очень просто. Дважды щелкните каждую запись в списке проводника. Однако, чтобы зафиксировать вкладки на месте и предотвратить их закрытие функцией однократного щелчка, убедитесь, что вы дважды щелкаете каждую из них.

Как открыть несколько кодов в Visual Studio?

Как открыть несколько файлов в VS Code?

Что означает добавление в PATH кода Visual Studio?

Что добавить в PATH?

Добавление каталога в ваш PATH увеличивает количество каталогов, в которых выполняется поиск, когда из любого каталога вы вводите команду в оболочке.

Чтобы пользователи могли выполнять задачи, характерные для вашего доменного языка (DSL), можно добавить в него команды меню. Команды отображаются в контекстном меню, когда пользователь нажимает схему правой кнопкой мыши. Команду можно настроить таким образом, чтобы она появлялась в меню только при определенных обстоятельствах. Например, можно сделать команду видимой, только когда пользователь выбирает определенные типы элементов или элементы в определенных состояниях.

В сводке действия выполняются в проекте DslPackage следующим образом:

Обновите номер версии пакета в Package.TT. (Это действие выполняется при любом изменении файла Commands.vsct.)

Напишите методы в классе командного метода , чтобы сделать команду видимой, и определить, что должна делать команда.

Также можно изменить поведение некоторых существующих команд, например "Вырезать", "Вставить", "Выбрать все" и "Печать", переопределив соответствующие методы в CommandSet.cs. Дополнительные сведения см. в разделе инструкции. Изменение стандартной команды меню.

Определение команды с помощью MEF

MEF (Managed Extension Framework) предлагает альтернативный метод определения команд в меню схемы. Его основная задача — включение доменного языка для расширения вами или другими сторонами. Пользователи могут выбрать установить только DSL или DSL и расширения. Кроме того, MEF уменьшает объем работы по определению команд контекстного меню после выполнения начальной работы по включению MEF в DSL.

Используйте метод, описанный в этом разделе, если:

вы хотите определить команды меню или других меню, кроме контекстного (вызываемого щелчком правой кнопки мыши);

вы хотите настроить определенные группы команд в меню;

вы не хотите разрешать другим пользователям добавлять в DSL их собственные команды;

вы хотите определить только одну команду.

В остальных случаях используйте для определения команд метод MEF. Дополнительные сведения см. в статье расширение возможностей DSL с помощью MEF.

Объявите команду в командах Commands. vsct

Команды меню объявляются в файле DslPackage\Commands.vsct. Эти определения указывают на метки элементов меню и место их отображения в меню.

файл, который вы изменяете, commands. vsct, импортирует определения из нескольких h файлов, которые находятся в каталоге установки пакета SDK Visual Studio\висуалстудиоинтегратион\коммон\инк. Он также включает Женератедвскт. vsct, который создается из определения DSL.

дополнительные сведения о vsct-файлах см. в разделе Visual Studio командная таблица (. Vsct) файлы.

Добавление команды

В Обозреватель решений в проекте DslPackage откройте команды. vsct.

В элементе Commands определите одну или несколько кнопок и группу. Кнопка — это элемент меню. Группа — это раздел в меню. Чтобы определить эти элементы, добавьте следующий код:

Каждая кнопка или группа идентифицируются по GUID и целочисленному идентификатору. Один и тот же GUID можно использовать при создании различных групп и кнопок, но при этом у них должны быть разные идентификаторы. Имена GUID и ИДЕНТИФИКАТОРы преобразуются в фактические идентификаторы GUID и числовые идентификаторы в <Symbols> узле.

Чтобы она загружалась только в контексте вашего доменного языка, добавьте для нее ограничение видимости. Дополнительные сведения см. в разделе элемент висибилитиконстраинтс.

Для этого добавьте в элемент CommandTable после элемента Commands следующий код:

Определите имена, которые использовались для идентификаторов GUID и идентификаторов. Для этого добавьте Symbols в элемент CommandTable после элемента Commands следующий код:

Замените на GUID, идентифицирующий группы и элементы меню. Чтобы получить новый идентификатор GUID, используйте средство создания GUID в меню Сервис .

Если вы хотите добавить сразу несколько групп или элементов меню, можно использовать один и тот же GUID. При этом необходимо использовать новые значения для IDSymbols .

В скопированном из данной процедуры коде замените собственными строками каждое вхождение следующих строк:

My Context Menu Command

Обновление версии пакета в Package.tt

При добавлении или изменении команды обновляйте параметр version ProvideMenuResourceAttribute, который применяется к классу пакета перед выпуском новой версии доменного языка.

Поскольку класс пакета определяется в созданном классе, обновите атрибут в файле текстового шаблона, из которого создается файл Package.cs.

Обновление файла Package.tt

В Обозреватель решений в проекте DslPackage в папке GeneratedCode откройте файл Package.tt.

Найдите элемент ProvideMenuResource .

Увеличьте параметр version атрибута, который является вторым параметром. При необходимости можно написать имя параметра, прямо указывающее на его назначение. Пример:

[VSShell::ProvideMenuResource("1000.ctmenu", version: 2 )]

Определение поведения команды

В доменном языке уже имеются некоторые команды, внедренные в разделяемый класс, который был объявлен в файле DslPackage\GeneratedCode\CommandSet.cs. Чтобы добавить новые команды, необходимо расширить этот класс, создав новый файл с частичным объявлением того же класса. Обычно используется имя класса <YourDslName> CommandSet . Полезно начать с проверки имени класса и проверки его содержимого.

Класс набора команд производится из CommandSet.

Расширение класса команд

В Обозревателе решений в проекте DslPackage откройте папку GeneratedCode, найдите раздел CommandSet.tt и откройте созданный в нем файл CommandSet.cs. Запомните пространство имен и имя первого определенного здесь класса. Например:

В DslPackage создайте папку с именем Пользовательский код. В этой папке создайте новый файл класса с именем CommandSet.cs .

В новом файле напишите частичное объявление, используя то же пространство имен и имя, что и в созданном частичном классе. Пример:

namespace Company.Language1 /* Make sure this is correct */

Код наборов команд обычно требуется для импорта следующих пространств имен:

Исправьте пространство имен и имя класса в соответствии с созданным файлом CommandSet.cs:

Необходимо определить два метода: один, чтобы определить, когда команда будет видна в контекстном меню правой кнопкой мыши, а другая — для выполнения команды. Эти методы не переопределяются. Наоборот, их нужно зарегистрировать в списке команд.

Определение условий для отображения команды

Для каждой команды Определите OnStatus. метод, который определяет, будет ли команда отображаться в меню и будет ли она включена или серым цветом. Задайте Visible Свойства и Enabled для MenuCommand , как показано в следующем примере. Этот метод вызывается для создания контекстного меню каждый раз, когда пользователь щелкает схему правой кнопкой мыши, поэтому должен работать быстро.

В данном примере команда отображается, только когда пользователь выбирает определенный тип фигуры, и включается, только когда хотя бы один из выбранных элементов находится в определенном состоянии. Пример основан на шаблоне схем классов доменного языка, а типы ClassShape и ModelClass определяются в доменном языке.

Следующие фрагменты часто используются в методах OnStatus:

this.CurrentSelection . Фигура, которую пользователь щелкает правой кнопкой мыши, всегда включается в этот список. Если пользователь щелкает пустую область схемы, схема становится единственным членом списка.

this.IsDiagramSelected() - true значение, если пользователь щелкнул пустую часть диаграммы.

this.IsSingleSelection() — пользователь не выберет несколько объектов

this.SingleSelection — Фигура или схема, которую пользователь щелкнул правой кнопкой мыши

shape.ModelElement as MyLanguageElement — элемент модели, представленный фигурой.

Как правило, свойство Visible должно определяться выбранным параметром, а свойство Enabled — состоянием выбранных элементов.

Метод OnStatus не должен менять состояние Магазина.

Определение действий команды

Для каждой команды определите метод OnMenu. , выполняющий необходимое действие при выборе этой команды в меню.

Если изменения вносятся в элементы моделей, необходимо делать это внутри транзакции. Дополнительные сведения см. в разделе инструкции. Изменение стандартной команды меню.

В данном примере типы ClassShape , ModelClass и Comment определяются в доменном языке, который производится из шаблона схем классов DSL.

Дополнительные сведения о переходе от объекта к объекту в модели и о создании объектов и ссылок см. в разделе как изменить стандартную команду меню.

Используйте то же значение GUID, которое было вставлено в Commands. vsct.

В случае изменений в разделе "Символы" VSCT-файла для сопоставления нужно будет также изменить эти объявления. Кроме того, необходимо увеличить номер версии в Package.tt

Зарегистрируйте команды меню как часть данного набора команд. GetMenuCommands() вызывается один раз при инициализации схемы:

Тестирование команды

Постройте и запустите доменный язык в экспериментальном экземпляре Visual Studio. Команда должна отображаться в контекстном меню в указанных вами ситуациях.

Выполнение команды

На панели инструментов Обозреватель решений нажмите кнопку преобразовать все шаблоны.

Нажмите клавишу F5 , чтобы перестроить решение, и начните отладку предметно-ориентированного языка в экспериментальной сборке.

В экспериментальном построении откройте пример схемы.

Щелкните несколько элементов в схеме правой кнопкой мыши, чтобы проверить, правильно ли включается и отключается команда, а также правильно ли работает ее отображение или скрытие в зависимости от выбранного элемента.

Диагностика

Команда не отображается в меню.

Пока вы не установите пакет доменного языка, команда будет отображаться только в экземплярах отладки Visual Studio. Дополнительные сведения см. в разделе Развертывание решения на предметно-ориентированном языке.

Убедитесь, что экспериментальный язык имеет правильное расширение имени файла для этого доменного языка. Чтобы проверить расширение имени файла, откройте DslDefinition.dsl в основном экземпляре Visual Studio. Затем в Обозревателе DSL щелкните узел "Редактор" правой кнопкой мыши и выберите "Свойства". В окне "Свойства" проверьте свойство FileExtension.

Установите точку останова в начале метода OnStatus. Он должен останавливаться при щелчке правой кнопкой мыши по любой части схемы.

Метод OnStatus не вызывается:

Убедитесь, что GUID и идентификаторы в коде CommandSet совпадают с идентификаторами в разделе "Символы" файла Commands.vsct.

В файле Commands.vsct убедитесь, что GUID и идентификаторы в каждом родительском узле указывают на правильную родительскую группу.

В командной строке Visual Studio введите devenv /rootsuffix exp /setup. Затем перезапустите экземпляр отладки Visual Studio.

Выполните метод OnStatus и убедитесь, что command.Visible и command.Enabled имеют значение true.

Отображается неправильный текст меню, или команда отображается в неправильном месте:

Убедитесь, что комбинация GUID и идентификатора уникальна для данной команды.

Убедитесь, что более ранние версии пакета удалены.

См. также

Компонент Text Template Transformation (Преобразование текстовых шаблонов) автоматически устанавливается как часть рабочей нагрузки разработки расширений Visual Studio. Его также можно установить на вкладке Отдельные компоненты Visual Studio Installer в категории Пакеты SDK, библиотеки и платформы. Установите компонент Пакет SDK для моделирования со вкладки Отдельные компоненты.

Можно ли добавить службу в папку, чтобы открыть ее с помощью определенного приложения?

введите описание изображения здесь

РЕДАКТИРОВАТЬ

Поскольку мой вопрос был помечен как неясный, я пытаюсь привести пример.

Давайте возьмем VSCode для примера. Это текстовый редактор, который открывает в нем папку и позволяет пользователю редактировать текстовые файлы в папке и подпапках папки. На рынке есть так много других приложений, как Sublime, Adobe Brackets и так далее.

Иерархия папок выглядит следующим образом (скриншот ниже)

введите описание изображения здесь

Для того, чтобы открыть папку в приложении, я должен открыть приложение, затем перейти к опции открытия папки, затем найти папку, затем выбрать и нажать кнопку открытия

Вместо этого я хочу, чтобы при щелчке правой кнопкой мыши была открыта папка с помощью текстового редактора.

Также как вы можете открыть папку в терминале, добавив сервис

Вы уже можете щелкнуть правой кнопкой мыши файл, показанный в окне приложения Finder, и открыть его с помощью приложения по умолчанию для другого приложения. Что вы хотите, чтобы сервис делал по-другому? @DavidAnderson Мне нужно открыть folder себя с приложением, а не file . Что вы ожидаете, если папка «открыта» приложением? О каком приложении вы говорите конкретно? Я говорю о таких приложениях, как VSCode и Adobe Bracket. @patrix, я даже упомянул их в своем вопросе. Я веб-разработчик и мне нужно открывать папки в таких текстовых редакторах Я бы проголосовал за повторное открытие, за исключением того, что разъяснение действительно ставит вопрос «кодирования» для переполнения стека, а не здесь.

Вы можете сделать это с помощью службы Automator .

Создать Сервис:

Откройте Automator и выберите Сервис или Файл > Создать > Сервис, если Automator уже открыт.

Set Service получает выбранный для файлов или папок и в к Finder .

Добавление сценария Run Shell Action , установка Shell: в / бен / Баш и ввода Pass: в качестве аргументов и добавьте следующий код :

введите описание изображения здесь

Теперь вы можете выбрать « Файлы и / или папки» в Finder, а затем щелкнуть по ним правой кнопкой мыши и выбрать « Открыть в Visual Studio Code» в контекстном меню « Службы» .

Примечание. Я проверил это с помощью кода Visual Studio, но не с помощью скобок, поскольку он не установлен. Однако вы должны быть в состоянии создать его для него таким же образом, подставляя имя приложения в open команду.

1. В окне меню ToolBox найдите компонент ContextMenuStrip и переместите его на форму.

компонент ContextMenuStrip

2. Нажмите один раз левой кнопкой мышки на добавленный компонент.

форма

В результате появится конструктор для создания контекстного меню.

конструктор меню

создание пункта меню

Наведите мышку на следующее пустое поле, в результате справа появиться стрелка нажмите на неё, после чего в выпадающем списке выберите пункт Separator .

тип меню

сепаратор

5. А теперь добавим пункт меню “Вставить”.

пункт меню

6. На этом будем считать, что наше первое контекстное меню создано и теперь давайте проверим, как оно работает. Запускаем приложение и нажимаем правую кнопку мыши.

Сколько бы вы сейчас раз не нажали на кнопку, в результате ничего не произойдёт, так как в данный момент мы не выполнили ещё одно важное действие.

7. Откройте окно Solution Explorer, после чего перейдите на вкладку Properties и найдите в списке свойство ContextMenuStrip .

вкладка Properties

Данное свойство присутствует у многих компонентов и элементов управления, так как именно с помощью него осуществляется вызов созданного контекстного меню.

Как показать код меню в Visual Studio?

Как открыть код VS в папке?

Открыть любой код

Как добавить код в переменную среды в Visual Studio?

Как открыть папку Visual Studio?

Как установить визуальный код?

Как установить Visual Studio Code на macOS?

Как переместить VS в код терминала?

Вы можете просто удерживать ctrl + shift, а затем, нажав i, вы переместите ваш фокус вперед и назад. Если вы хотите, чтобы Ctrl + `переключался между терминалом и текстовым редактором, сделайте следующее: Откройте привязку клавиш. json: Ctrl + Shift + P, затем выберите Настройки: Открыть сочетания клавиш (JSON).

Что такое код сброса к заводским настройкам для Visual Studio?

Если вы хотите все сбросить, перейдите в% userprofile% AppData Roaming Code и удалите всю папку после удаления кода VS, затем установите его снова. Также в% userprofile% . vscode удалить папку расширений, если вы хотите удалить все расширения.

Как вы используете код VS?

Начало работы с Visual Studio Code

  1. Загрузите и установите VS Code.
  2. Создайте новый файл.
  3. См. Обзор пользовательского интерфейса.
  4. Установите поддержку вашего любимого языка программирования.
  5. Измените сочетания клавиш и легко переходите с других редакторов с помощью расширений для привязки клавиш.
  6. Настройте свой редактор с помощью тем.

Как мне ввести код в терминал?

Запуск из командной строки

Запуск VS Code из терминала выглядит круто. Для этого нажмите CMD + SHIFT + P, введите команду оболочки и выберите команду Установить код в пути. После этого перейдите к любому проекту из терминала и введите код. из каталога для запуска проекта с помощью VS Code.

Как открыть несколько вкладок в коде Visual Studio?

Открыть несколько вкладок в VS Code очень просто. Дважды щелкните каждую запись в списке проводника. Однако, чтобы зафиксировать вкладки на месте и предотвратить их закрытие функцией однократного щелчка, убедитесь, что вы дважды щелкаете каждую из них.

Как открыть несколько кодов в Visual Studio?

Как открыть несколько файлов в VS Code?

Что означает добавление в PATH кода Visual Studio?

Что добавить в PATH?

Добавление каталога в ваш PATH увеличивает количество каталогов, в которых выполняется поиск, когда из любого каталога вы вводите команду в оболочке.

Читайте также: