سؤال

لدي حزمة 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.

ومع ذلك ، هناك خطاف تصحيح (منذ VS 2005 SP1) يتيح لك تحديد GUID/ID لأي عنصر من القائمة تقريبًا قد تكون مهتمًا به. انظر منشور المدونة هذا لكيفية القيام بذلك.

باستخدام التقنية الموضحة في هذا المنشور ، إذا كنت Ctrl+Shift+RightClick في محرر JavaScript ، أحصل على مربع الحوار التالي:

alt text

في الu003CSymbols> قسم من ملف 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>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top