visual-studio-2010 - 如何为 .js 文件扩展 vs2010 编辑器上下文菜单?

标签 visual-studio-2010 editor package vsx vsip

我有一个带有几个命令的 VS2010 VSIP 包,这些命令被添加到 javascript 编辑器的上下文菜单中,我正在使用

  <Group guid="guidPrettyJsCmdSet" id="ContextMenuGroup" priority="0x0600">
       <Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_CODEWIN"/>
  </Group>

但它仅适用于 C# 文件,如何使其适用于 .js 文件?

最佳答案

HTML/CSS/JS 代码编辑器实际上显示与主代码编辑器不同的上下文菜单。不幸的是,这些上下文菜单的 Guid/ID 对未在 Visual Studio SDK 中发布或定义。

但是,有一个调试 Hook (自 VS 2005 SP1 起)可让您识别几乎所有您可能感兴趣的菜单项的 Guid/ID。请参阅 this blog post如何做到这一点。

使用该帖子中描述的技术,如果我在 Javascript 编辑器中按 CTRL+SHIFT+RIGHTCLICK,我会得到以下对话框:

alt text

在我的 VSCT 文件的 部分,我可以输入以下内容:

<GuidSymbol name="htmlEditorCommandSet" value="{D7E8C5E1-BDB8-11D0-9C88-0000F8040A53}">
  <IDSymbol name="jsContextMenu" value="0x0034"/>  <!-- 52 in hex is 0x0034 -->
</GuidSymbol>

然后,这只是养育那个 Guid/ID 的问题:
  <Group guid="guidPrettyJsCmdSet" id="ContextMenuGroup" priority="0x0600">
    <Parent guid="htmlEditorCommandSet" id="jsContextMenu"/>
  </Group>

关于visual-studio-2010 - 如何为 .js 文件扩展 vs2010 编辑器上下文菜单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3673121/

相关文章:

c++ - 在 Visual C++ 中称为 RGB 的类

c++ - C++0x 中 std::make_tuple 的问题

visual-studio - Visual Studio 2008,当我退格而不是空格时,如何设置它以删除制表符?

linux - 如何清除 NANO-Editor 的屏幕,打开一个新的文本文件?

python - 在气隙机器上的 Anaconda 中安装非 conda 包

c++ - Visual Studio 2010 中好的 C++ 主题的集合?

c# - Visual Studio 中的缩进快捷方式

r - 如何在 R-package 中正确包含依赖项?

eclipse - 我可以跳转到类似于 Sublime Text 2 的 Eclipse 中的符号吗?

使用 install.packages 安装软件包时 RStudio 崩溃