GithubHelp home page GithubHelp logo

extensibilitytools's People

Contributors

agc93 avatar billpratt avatar codecadwallader avatar flcdrg avatar gregtrevellick avatar hmemcpy avatar japj avatar joergbattermann avatar josetr avatar madskristensen avatar markdeggeller avatar mlorbetske avatar phofman avatar yannduran avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

extensibilitytools's Issues

Error InvalidOperationException (A value for 'Component' needs to be specified in the catalog) on updating/uninstalling

Installed product versions

  • Visual Studio: VS2017 15.7 Enterpise
  • This extension: 1.10.188

Description

I cannot update or uninstall the extension.

Here's what I see in logs every time I try to update or install the extension (this particular log from uninstalling):

03.07.2018 17:45:53 - Uninstalling 'Extensibility Tools', version 1.10.188.
03.07.2018 17:45:53 - pkgCatalogPath is 'Z:\PROG\MICROSOFT VISUAL STUDIO\2017\ENTERPRISE\COMMON7\IDE\EXTENSIONS\FJUVHW2U.NV0\catalog.json'.
03.07.2018 17:45:58 - vsPkg.Version is '1.10.188'.  extension.Header.Version is '1.10.188'
03.07.2018 17:46:02 - Unable to find component in product catalog with this ID: Component.f8330d54-0469-43a7-8fc0-7f19febeb897,version=1.10.188,language=en-US
03.07.2018 17:46:02 - System.InvalidOperationException: A value for 'Component' needs to be specified in the catalog.
   at Microsoft.VisualStudio.ExtensionManager.ExtensionEngineImpl.PerformSetupEngineUnInstall(IInstalledExtension extension, InstallFlags installFlags, Boolean downgrade)
   at Microsoft.VisualStudio.ExtensionManager.ExtensionEngineImpl.UninstallInternal(IInstalledExtension extension, Boolean forceDelete, Version targetedVSVersion, InstallFlags installFlags, Boolean downgrade)
   at Microsoft.VisualStudio.ExtensionManager.ExtensionEngineImpl.Uninstall(IInstalledExtension extension, InstallFlags installFlags, Version targetedVSVersion)
   at VSIXInstaller.InstallProgressPage.UninstallVsix(String vsixId, SupportedVSSKU targetSku, IProgress`1 progress)

I'm going to just manually remove extension's folder ("Microsoft Visual Studio\2017\Enterprise\Common7\IDE\Extensions\fjuvhw2u.nv0") but I guess it should not be so tedious.

IntelliSense crash, when editing VSCT

I tried to use this project with my BlackBerry NDK plugin, which has some simple UI inside Visual Studio and found following issue.

intellisense_exception1

or

intellisense_exception2

It seems to be caused, when you actually type inside the VSCT file and the XML is still invalid due to unclosed tags. At the end of the day CTRL+Space might lead to some strange exceptions inside your code here:

tracked_exception1

IntelliSense crash on Enter key

Similar to #1. When you start typing in VSCT file and hit enter in the middle of the XML attribute, you might end up with following failure:

intellisense_exception3

This seems to be caused here:

tracked_exception3

Signing should perform a build first

If you run the Clean command before right-clicking the project and selects Sign VSIX package... then you get an error that the .vsix file does not exist.

I suggest that when clicking the Ok button in the signing dialog, a build should be kicked off before attempting to sign. What do you think @phofman?

Allow disabling the editor margin

Great extension, and the editor margin is really useful. But it gets in the way for non-VS coding, or presenting. Can it be easily disabled?

Code contribution

Hi Mads,

Do you accept code contributions?

I wish to add a feature, that drives me crazy the most, when working with VSCT files. I think about the code generator that takes the CmdIDs and GUIDs from VSCT and places them respectively into C#/VB code to be used, when dealing with CommandID.

[Want] Roslyn Quoter Tool

It would be so useful to have RoslynQuoter, as a tool in VS.

  1. Highlight code.
  2. Right-Click Menu
  3. View as Implemented via Roslyn Syntax
  4. Paste as Implemented via Roslyn Syntax.

Exception raised on "Show Project Information" with C++ projects

Installed product versions

  • Visual Studio: Community 2015 (14.0.25431.01 Update 3)
  • This extension: 1.10.188

Description

On invoking context-menu command "Show Project Information" on C++ projects in Solution Explorer, Visual Studio raises an exception:
"Ugyldigt antal parametre. (Exception from HRESULT: 0x8002000E (DISP_E_BADPARAMCOUNT))"

Steps to recreate

  1. In Solution Explorer right click on a C++ Project.
  2. Click "Show Project Information"

Current behavior

Shows an error dialog (ctrl+c from dialog):

---------------------------
Microsoft Visual Studio
---------------------------
Ugyldigt antal parametre. (Exception from HRESULT: 0x8002000E (DISP_E_BADPARAMCOUNT))
---------------------------
OK   
---------------------------

Expected behavior

If possible produce a text file in the editor pane with info on the project as with other project types, or else not give the choice to invoke the command at all. (Grey out or not show in context menu). (Another alternative could be to leave the menu command visible and, if invoked, inform the user that this has not yet been implemented for C++ projects.)

Attachments

Futher info on my Visual Studio environment if needed: copy of Help-> About Microsoft Visual Studio Dialog

Visual Studio hangs with "Waiting for parse to complete..." when opened with the source for `source.extension.vsixmanifest` visible

Installed product versions

  • Visual Studio: 2017 Enterprise
  • This extension: 1.10.211

Description

Visual Studio hangs with "Waiting for parse to complete..." when opened with the source for source.extension.vsixmanifest visible.

It's actually this issue that has caused me to uninstall Extensibility Tools in the past. It has now happened on multiple extensibility solutions. Sorry I didn't report it earlier. ๐Ÿ˜Š

Steps to recreate

  1. Right-click, view source on source.extension.vsixmanifest
  2. Close Visual Studio
  3. Open Visual Studi

Current behavior

Visual Studio hangs showing "Waiting for parse to complete..." on staus bar

image

Requires kill devenv process to close.

Expected behavior

Visual Studio opens showing source.extension.vsixmanifest source.

Feature request: Editor margin / line endings

It would be nice for the bottom editor margin to also show what line endings are present in the file.
E.g. CRLF or LF

If its mixed, it could say so or give a count for each type.

View > Activity Log errors on VS 2017 RC4

Installed product versions

  • Visual Studio: VS 2017 RC4
  • This extension: [example 1.10.188]

Description

Can't view activity log in VS 2017.

Steps to recreate

  1. Select View > Activity Log
  2. See the following:
    image
[Window Title]
Web Browser

[Content]
Cannot find โ€˜file:///C:/Users/passp/AppData/Roaming/Microsoft/VisualStudio/15.0_c9a42992/ActivityLog.xmlโ€™. Make sure the path or Internet address is correct.

[OK]

Current behavior

It only seems to work if I start it with: devenv.exe" /log ActivityLog.xml
Does VS 2017 create an activity log by default?

Expected behavior

Some kind if warning if the file doesn't exist.

Thanks for all your extensibility work! ๐Ÿ‘

Few suggestions

Few hints/ideas, if you don't mind:

  1. I also created some time ago a tool to digitally sign VSIX packages for public releases; maybe this could be also integrated into this plugin?
  2. if you have a code-signing certificate, you could sign this plugin too ;)
  3. if you edit README.md, I suggest doing it directly via github page, after clicking the file on the list and then [Edit] icon on the toolbar; then you will have an option to preview changes at runtime, before commit
  4. thanks for placing me in credits
  5. when you are doing releases, it's better to mark them with git tags, instead of placing version numbers in comments, as then github puts a special care and source is zipped plus could be downloaded from releases list page without the need of repo clone; finally binaries could be assigned for these releases too

Intellisense for Visual Studio Resources

Please add intellisense for Visual Studio Resources such as VsBrushs, VsColors and Glyphs that can create better extension same visual studio interface and themes

Background="{DynamicResource VsBrush.Window}"

by default not work

ExtensibilityTools causes exception when loading a solution in VS 2015

When loading a solution I always get an exception dialog saying "An exception has been encountered. This may be caused by an extension.".

Disabling this extension stops the exception from occurring.

The only error in ActivityLog.xml is the following:

691 2015/04/28 18:55:18.911 Error Editor or Editor Extension System.NullReferenceException: Object reference not set to an instance of an object. at MadsKristensen.ExtensibilityTools.EditorMargin.BottomMarginFactory.CreateMargin(IWpfTextViewHost wpfTextViewHost, IWpfTextViewMargin marginContainer) in c:\projects\extensibilitytools\src\EditorMargin\BottomMarginFactory.cs:line 27 at Microsoft.VisualStudio.Text.Utilities.ContainerMargin.<AddMargins>b__3(IWpfTextViewMarginProvider mp) at Microsoft.VisualStudio.Text.Utilities.GuardedOperations.InstantiateExtension[TExtension,TMetadata,TExtensionInstance](Object errorSource, Lazy`2 provider, Func`2 getter)

I have VS 2015 CTP 6 but this has happened with other versions.

I can add the entire ActivityLog.xml text if it would be helpful.

How can we export the Image Monikers in the Dark theme?

Installed product versions

  • Visual Studio: 2017(15.7)
  • This extension: [example 1.10.211]

Description

Currently the Export Image Moniker dialog can only export the monikers in the light theme.
How can we export those in the dark theme?

Move Activity Log command to the Tools menu

Installed product versions

  • Visual Studio: 2015]
  • This extension: 1.10.198

Description

I never expect to find Activity Log on the View menu.

Steps to recreate

  1. Hunt around looking for ActivityLog.xml
  2. Open ActivityLog.xml
  3. Remember there is a handy Activity Log command in ExtensibilityTools.
  4. Kick myself ๐Ÿ˜‰

Current behavior

The Activity Log command is on the View menu, which kind of makes sense but I always forget it's there.

image

Expected behavior

I'd expect to find this on the Tools menu, near to other extension related commands.

image

No release notes/tags

So, today I noticed that there was an update available for this addon, but when I came here to find out what was changed, I discovered that you haven't tagged any releases since 1.0, and you also don't seem to have any sort of release notes or user-level changelog file in the repository.

Crash in Extensibility Tools

Installed product versions

  • Visual Studio: 2015 Professional
  • This extension: 1.7.154

Description

Just getting started with trying to create a VS extension. Not sure what's happening.

Steps to recreate

Going through steps specified here https://msdn.microsoft.com/en-us/library/dd885492.aspx
for "Creating a Classifier Extension".

Current behavior

When I press F5 to build and run I get the crash shown in the attached image. A mouse-over for DTE.Solution.FullName indicates that it is an empty string.

extensibilitytoolscrash

Expected behavior

Yesterday, before installing the ExtensibilityTools extension, it worked OK.

As well as installing ExtensibilityTools, I've also cloned it and I'd loaded it into Visual Studio and tried to gain insight into how extensions work by hitting F5 to run it as a test. That was probably a mistake because that crashed too. Can't remember if it was the same crash, probably.

Support VS 2019+? (Can't even build this in VS 2019)

Installed product versions

  • Visual Studio: 2019/2022
  • This extension: N/A

Description

This isn't currently supported with VS 2019/2022 and it's a dependency of JavaScriptPrettier that I want to get working in 2022.
It seems non-trivial to get it working though.. lots of missing references when I try to build in VS 2019.

Steps to recreate

  1. Clone the repo
  2. try to build the solution in VS 2019

Current behavior

Mostly reference issues. I have the SDK for extensions installed, but I get a LOT of missing references:
image

Expected behavior

The project itself should be buildable in VS 2019 and/or VS 2022 and the extension should support up to VS 2022

Cannot find custom tool 'VsctGenerator' on this system.

Installed product versions

  • Visual Studio: VS2022 Preview 4
  • This extension: latest

Description

---------------------------
Microsoft Visual Studio
---------------------------
Cannot find custom tool 'VsctGenerator' on this system.
---------------------------
OK   
---------------------------

Steps to recreate

  1. Right click a VSCT file and select Run Tool

Current behavior

Errors out

Expected behavior

Should run the tool. It was working in preview 3

Additional

Looks like it could be an issue with an older dep Microsoft.VisualStudio.TextTemplating.VSHost.15.? I only have VS2022 installed (Recently uninstalled VS2019 but reinstalled it and it's still an issue).

  <entry>
    <record>2132</record>
    <time>2021/09/16 13:05:47.701</time>
    <type>Error</type>
    <source>VisualStudio</source>
    <description>LegacySitePackage failed for package [VsixSynchronizerPackage]Source: &apos;mscorlib&apos; Description: Could not load file or assembly &apos;Microsoft.VisualStudio.TextTemplating.VSHost.15.0, Version=16.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a&apos; or one of its dependencies. The system cannot find the file specified.&#x000D;&#x000A;System.IO.FileNotFoundException: Could not load file or assembly &apos;Microsoft.VisualStudio.TextTemplating.VSHost.15.0, Version=16.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a&apos; or one of its dependencies. The system cannot find the file specified.&#x000D;&#x000A;File name: &apos;Microsoft.VisualStudio.TextTemplating.VSHost.15.0, Version=16.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a&apos;&#x000D;&#x000A;   at System.ModuleHandle.ResolveType(RuntimeModule module, Int32 typeToken, IntPtr* typeInstArgs, Int32 typeInstCount, IntPtr* methodInstArgs, Int32 methodInstCount, ObjectHandleOnStack type)&#x000D;&#x000A;   at System.ModuleHandle.ResolveTypeHandleInternal(RuntimeModule module, Int32 typeToken, RuntimeTypeHandle[] typeInstantiationContext, RuntimeTypeHandle[] methodInstantiationContext)&#x000D;&#x000A;   at System.Reflection.RuntimeModule.ResolveType(Int32 metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments)&#x000D;&#x000A;   at System.Reflection.CustomAttribute.FilterCustomAttributeRecord(CustomAttributeRecord caRecord, MetadataImport scope, Assembly&amp; lastAptcaOkAssembly, RuntimeModule decoratedModule, MetadataToken decoratedToken, RuntimeType attributeFilterType, Boolean mustBeInheritable, Object[] attributes, IList derivedAttributes, RuntimeType&amp; attributeType, IRuntimeMethodInfo&amp; ctor, Boolean&amp; ctorHasParameters, Boolean&amp; isVarArg)&#x000D;&#x000A;   at System.Reflection.CustomAttribute.GetCustomAttributes(RuntimeModule decoratedModule, Int32 decoratedMetadataToken, Int32 pcaCount, RuntimeType attributeFilterType, Boolean mustBeInheritable, IList derivedAttributes, Boolean isDecoratedTargetSecurityTransparent)&#x000D;&#x000A;   at System.Reflection.CustomAttribute.GetCustomAttributes(RuntimeType type, RuntimeType caType, Boolean inherit)&#x000D;&#x000A;   at Microsoft.VisualStudio.Shell.Package.ScheduleToolboxItemDiscoveryFactoriesRegistrationIfNecessary()&#x000D;&#x000A;   at Microsoft.VisualStudio.Shell.Package.Initialize()&#x000D;&#x000A;   at Microsoft.VisualStudio.Shell.Package.Microsoft.VisualStudio.Shell.Interop.IVsPackage.SetSite(IServiceProvider sp)&#x000D;&#x000A;&#x000D;&#x000A;WRN: Assembly binding logging is turned OFF.&#x000D;&#x000A;To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.&#x000D;&#x000A;Note: There is some performance penalty associated with assembly bind failure logging.&#x000D;&#x000A;To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].&#x000D;&#x000A;</description>
    <guid>{8C737258-7DA1-4314-97E9-CB61F7CF8D22}</guid>
    <hr>80070002</hr>
    <errorinfo></errorinfo>
  </entry>
```

Export Image Moniker: Windows DPI setting influences generated image size

Installed product versions

  • Visual Studio: 2015 Community Update 3
  • This extension: 1.10.188
  • Windows: 10 (version 1607)

Description

When generating image files with the Export Image Moniker feature the generated image size = specified size * Windows DPI scaling setting.

Steps to recreate

  1. In Windows Display Settings set "Change the size of text, apps, ..." to 125%. Requires log out / log in to apply the change.
  2. Start Visual Studio > Tools > Export Image Moniker
  3. Enter 16 as the width of the file. Export any of the icons to a file.
  4. Check the size of the exported image.

Current behavior

The size of the exported image is 20x20 (instead of 16x16 that was specified).

Expected behavior

The size of the exported image should be the specified 16x16.

More info

To fix this issue ImageMonikerDialog.GetImage method should be modified by setting an explicit ImageAttributes.Dpi value:

imageAttributes.Dpi = 96;

It seems that the when no explicit Dpi value is set, IVsImageService2 service uses the primary display's DPI setting.

PS. Thanks for this great extension! :)

Unable to install extension in Visual Studio 2017 RC

Installed product versions

  • Visual Studio: 2017 Enterprise RC
  • This extension: 1.10.188 (Newest from Online Store)

Description

After selecting the extension in the form within Visual Studio and closing all Visual Studio Windows it tries to install the extension. This installation fails after some time.

The error from the log is "File not found" (See attached log file).
Some parts of the log file are in German (German VS is used). If you need to have something translated feel free to ask.

Steps to recreate

  1. Open Visual Studio 2017 RC
  2. Open "Extensions and Updates" dialog from menu
  3. Select the "ExtensibilityTools" extension
  4. Click on install

Current behavior

Installation fails

Expected behavior

Installation should work without errors

Installation log file

ExtensibilityTools.txt

Auto-sync .resx File Output Error

Installed product versions

  • Visual Studio: 2015 Professional
  • This extension: 1.10.188

Description

Whenever I enable the "Auto-Sync Resx and Icon files" feature on the "source.extension.vsixmanifest" group I get an error that says:

Two output file names resolved to the same output path: "obj\Debug\VSPackage.resources"

Steps to recreate

  1. Right click on the source.extension.vsixmanifest and click the "Auto-Syn Resx and Icon files" so that it is enabled
  2. Rebuild solution

Current behavior

The project/solution will fail to build when the auto-sync feature is enabled.

P.S. I do have a custom command with a .resx file named VSPackage.resx

Expected behavior

The project/solution should build

Error message in project property edit dialog.

Installed product versions

  • Visual Studio: 2015 Professional, Update 3
  • Extensibility Tools 1.10.188

Description

During project property editing an error message is shown. Not sure though,
if the error originates from the templates or CPS.

Steps to recreate

  1. Create new project type from Visual C# -> Extensibility -> C# project template
  2. Start debugging and create project of new type.
  3. Select project root node in the solution explorer.
  4. Edit AssemblyName property via Edit...

Current behavior

error

Expected behavior

No error message in dialog.

System.NullReferenceException in CssTools.CssExtensions.GetDeclarations

Installed product versions

  • Visual Studio: 2017 15.8.0 Preview 4
  • This extension: CssTools 1.1.21

Description

When using the normal VS Find/Replace feature, when clicking the Replace single and Find Next button on the widget, VS crashes after a few seconds of inactivity.

Steps to recreate

  1. Open a project with multiple files
  2. Open a code editor, select some text
  3. Press Ctrl+H to display find replace dialog and enter some replace text
  4. Press the Replace and Find Next button

Current behavior

VS2017 crashes with the following exception in the activity log:

  <entry>
    <record>2825</record>
    <time>2018/07/12 23:15:41.627</time>
    <type>Error</type>
    <source>Editor or Editor Extension</source>
    <description>System.NullReferenceException: Object reference not set to an instance of an object.&#x000D;&#x000A;   at CssTools.CssExtensions.GetDeclarations(RuleBlock rule) in C:\projects\csstools\src\ExtensionMethods\CssExtensions.cs:line 45&#x000D;&#x000A;   at CssTools.VendorClassifier.UpdateDeclarationCache(ParseItem item) in C:\projects\csstools\src\Classify\VendorClassifier.cs:line 116&#x000D;&#x000A;   at CssTools.VendorClassifier..ctor(IClassificationTypeRegistryService registry, ITextBuffer buffer) in C:\projects\csstools\src\Classify\VendorClassifier.cs:line 59&#x000D;&#x000A;   at CssTools.VendorClassifierProvider.&lt;&gt;c__DisplayClass4_0.&lt;GetClassifier&gt;b__0() in C:\projects\csstools\src\Classify\VendorClassifier.cs:line 37&#x000D;&#x000A;   at Microsoft.VisualStudio.Utilities.PropertyCollection.GetOrCreateSingletonProperty[T](Object key, Func`1 creator)&#x000D;&#x000A;   at CssTools.VendorClassifierProvider.GetClassifier(ITextBuffer textBuffer) in C:\projects\csstools\src\Classify\VendorClassifier.cs:line 37&#x000D;&#x000A;   at Microsoft.VisualStudio.Text.Classification.Implementation.ClassifierTaggerProvider.&lt;&gt;c__DisplayClass12_0`1.&lt;CreateTagger&gt;b__0(IClassifierProvider provider)&#x000D;&#x000A;   at Microsoft.VisualStudio.Text.Utilities.GuardedOperations.InvokeEligibleFactories[TExtensionInstance,TExtensionFactory,TMetadataView](IEnumerable`1 lazyFactories, Func`2 getter, IContentType dataContentType, IContentTypeRegistryService contentTypeRegistryService, Object errorSource)</description>
  </entry>

Expected behavior

normal Find and Replace functionality.

Code-signing Support

It would be nice to have some option helping in signing VSIX package. Such a package presents Digital Signature text about the author, when installing manually and its content is validated by Installer/Extension Manager. Similar to this one about me:

signing

From the code perspective, it is fairly easy to implement. Some playing around with PackageDigitalSignatureManager and already compiled package. Check this sample code from MSDN. Anyway, I already have it implemented and working in my Signature tool.

The mandatory option is to allow using preinstalled certificate and/or one from .pfx file (with password).

Optionally, beside VSIX package, it could also sign regular Windows binaries for any other kinds of project supported by Visual Studio. However, it's handled a bit differently, i.e. by executing signtool.exe tool with proper parameters (not in C# code only).

The harder part, is where to place it inside Visual Studio:

  • as additional property page of VSIX project? - doable via custom Project Flavor AFAIK, but the biggest flaw is that devs might have problems opening such a project, when the extension is not installed
  • as a custom tool window? - simple toolwindow suggesting output binaries produced by all projects with ability to select certificate
  • a 'Sign Binary...' menu option, when right-clicking the project node in Solution Explorer and certificate options are specified via extension option page

Any suggestions welcome.

Vsct synchronization generates a .cs files with Tabs, regardless of the Visual Studio settings

Installed product versions

  • Visual Studio: 2015 Professional
  • This extension: [example 1.6.138]

Description

The "Auto-sync VSCT" command generates a .cs file that is using tabs for indentation, instead of the C# style configured in Visual Studio.
image

Current behavior

Generates tabs.

Expected behavior

Should generate the indent character and size, depending on the user's Visual Studio preferences.

VS 2019 support?

Please add support for VS 2019. I tried modifying install targets and prerequisites which is usually enough, but then it failed to install to 2019 with an unintelligible NuGet error. I'm not experienced enough with VS SDK issues to debug it, but there's no reason why 2019 can't be supported, right?

Show the VS appdata directory

Installed product versions

  • Visual Studio: 2017 RC
  • This extension: 1.10

Description

Visual Studio 2017 allows for side by side installs, and as a VS extension developer I would like to know what is the relevant activity log, cache or extensions directory.
2016-12-20_16h12_46

Current behavior

Developer needs to memorize the ID or search for most recently modified file to find the correct ID

Expected behavior

ExtensibilityTools extension allows user to see current VS location within %appdata%

P.S.

I've got working code for this, and I'd like to ask you

  • should I proceed with the PR?
  • does it belong in this extension or Clear MEF Cache?
  • Should this be visible at all times in status bar, or should it live as a menu item?

Extension fails to install: Object reference not set to an instance of an object.

Installed product versions

  • Visual Studio: 2015, 2017 (Both Professional SKUs)
  • SSMS 2014
  • This extension: 1.10.188

Description

The extension fails to install.

Steps to recreate

  1. Downloaded the 1.10.188 from the VS Marketplace
  2. Ran the installer
  3. Boom

Current behavior

Boom!
image

VSIX Installer Log: https://gist.github.com/larsw/eca61ea5731df5bba2ac29efdffd1171

Expected behavior

Expected the extension to install successfully.

Collapse or expand, How to Set folds?

Description

I am a beginner in writing extensions . My document is mix of JSON and XSLT. I don't know how to delete and to set folding on the places where I want to be. I am asking you which part of code can I use to set my own folds.

I have sometning like this

-<xsl:template match="/">

-    {
      "$schema": "****",
      "contentVersion": "*******",
-      "functions": [
      ],
-     "parameters": {
        "par1": {
          "type": "string"
         },
-            "par2": {
          "type": "string"
        },
-    <xsl:for-each select="Project/Somethnig1/Something2">

-       "par3<xsl:value-of select="@Include" />": {
            "type": "string",
            "defaultValue": "7"
          },

    </xsl:for-each>
-            "par4": {
          "type": "string"
        },
-    <xsl:if test="not(/Project/Somethnig1/Something2/Name='a1))">
-       "par5": {
              "type": "string"
          }
     </xsl:if>
             }
</xsl:template>

And want to tranfsorm it like this

-<xsl:template match="/">

-    {
      "$schema": "****",
      "contentVersion": "*******",
-      "functions": [
      ],
+     "parameters": {
             }
</xsl:template>

Or this

-<xsl:template match="/">

-    {
      "$schema": "****",
      "contentVersion": "*******",
-      "functions": [
      ],
-     "parameters": {
        "par1": {
          "type": "string"
         },
-            "par2": {
          "type": "string"
        },
+    <xsl:for-each select="Project/Somethnig1/Something2">
    </xsl:for-each>
-            "par4": {
          "type": "string"
        },
+    <xsl:if test="not(/Project/Somethnig1/Something2/Name='a1))">
     </xsl:if>
             }
</xsl:template>

Current behavior

-<xsl:template match="/">

-    {
      "$schema": "****",
      "contentVersion": "*******",
-      "functions": [
      ],
-     "parameters": {
        "par1": {
          "type": "string"
         },
-            "par2": {
          "type": "string"
        },
-    <xsl:for-each select="Project/Somethnig1/Something2">

-       "par3<xsl:value-of select="@Include" />": {
            "type": "string",
            "defaultValue": "7"
          },

    </xsl:for-each>
-            "par4": {
          "type": "string"
        },
-    <xsl:if test="not(/Project/Somethnig1/Something2/Name='a1))">
-       "par5": {
              "type": "string"
          }
     </xsl:if>
             }
</xsl:template>

Expected behavior

-<xsl:template match="/">

-    {
      "$schema": "****",
      "contentVersion": "*******",
-      "functions": [
      ],
-     "parameters": {
        "par1": {
          "type": "string"
         },
-            "par2": {
          "type": "string"
        },
+    <xsl:for-each select="Project/Somethnig1/Something2">
    </xsl:for-each>
-            "par4": {
          "type": "string"
        },
+    <xsl:if test="not(/Project/Somethnig1/Something2/Name='a1))">
     </xsl:if>
             }
</xsl:template>

Description field allows line breaks

Installed product versions

  • Visual Studio: 2015 Enterprise
  • This extension: 1.8.166

Description

I used the GUI editor to update the .vsixmanifest file in an extension project to include a multi-line description. This caused invalid C# code to be generated

System.NullReferenceException: Object reference not set to an instance of an object. BottomMargin.cs:line 134

Installed product versions

  • Visual Studio: 2017
    14.02.2018 02:30:04: System.NullReferenceException: Object reference not set to an instance of an object.
    at Microsoft.VisualStudio.Text.Classification.Implementation.ClassifierAggregator.GetClassificationSpans(SnapshotSpan span)
    at MadsKristensen.ExtensibilityTools.EditorMargin.BottomMargin.b__15_0() in C:\projects\extensibilitytools\src\EditorMargin\BottomMargin.cs:line 134
    14.02.2018 02:30:04: System.NullReferenceException: Object reference not set to an instance of an object.
    at Microsoft.VisualStudio.Text.Classification.Implementation.ClassifierAggregator.GetClassificationSpans(SnapshotSpan span)
    at MadsKristensen.ExtensibilityTools.EditorMargin.BottomMargin.b__15_0() in C:\projects\extensibilitytools\src\EditorMargin\BottomMargin.cs:line 134

NullReferenceException while Debugging

Installed product versions

  • Visual Studio: 2017 Enterprise
  • This extension: 1.10.196

Description

Exception Info: System.NullReferenceException
   at Microsoft.VisualStudio.Text.Classification.Implementation.ClassifierAggregator.GetClassificationSpans(Microsoft.VisualStudio.Text.SnapshotSpan)
   at MadsKristensen.ExtensibilityTools.EditorMargin.BottomMargin.<UpdateClassificationLabel>b__15_0()
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
   at System.Windows.Threading.DispatcherOperation.InvokeImpl()
   at System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(System.Object)
   at MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(System.Object)
   at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
   at MS.Internal.CulturePreservingExecutionContext.Run(MS.Internal.CulturePreservingExecutionContext, System.Threading.ContextCallback, System.Object)
   at System.Windows.Threading.DispatcherOperation.Invoke()
   at System.Windows.Threading.Dispatcher.ProcessQueue()
   at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
   at MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
   at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32)
   at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr)

Steps to recreate

Debugging large C# solution

Current behavior

Crashing Visual Studio

Expected behavior

Not crashing Visual Studio

KnownMoniker intellisense in WPF designer [feature request]

It would be great to use the KnownMonikers intellisense feature when working with the CrispImage tag in a XAML file.

Ex:

<UserControl ...
    xmlns:imaging="clr-namespace:Microsoft.VisualStudio.Imaging;assembly=Microsoft.VisualStudio.Imaging"
    xmlns:catalog="clr-namespace:Microsoft.VisualStudio.Imaging;assembly=Microsoft.VisualStudio.ImageCatalog"
    ...>
    <imaging:CrispImage Width="16" Height="16" Moniker="{x:Static catalog:KnownMonikers.MoveUp}"></imaging:CrispImage>
</UserControl>

Or even better (if possible) would be with the KnownMonikers enum static ImageMoniker properties in general. So using that enum in C# or XAML might show the intellisense icon previews.

Thanks

Theme Swatches Window - Copy text using context menu crashes VS

Installed product versions

  • Visual Studio: 2015 Professional Update 3
  • This extension: 1.9.178

Description

In the Theme Swatch window, if you select a swatch and then highlight the content of the "Name" field and right-click and select "Copy" it crashes VS.

Steps to recreate

  1. Open the Theme Swatches window
  2. Click on any swatch
  3. Highlight the content of the "Name" field
  4. Right Click the selected text and choose Copy.

image

Current behavior

It crashes VS - this is not optimal.

Expected behavior

Copy the selected text to the clipboard and not crash.

Auto-sync VSCT and Auto-sync to Resx are not working in VS2017 - No error, nothing happens.

Installed product versions

  • Visual Studio: 2017 Enterprise
  • This extension: 1.10.188

Description

After right clicking the vsixmanifest and selecting Auto-sync to Resx and Icon Files, nothing happens. No error and no files are created.

Steps to recreate

  1. Open VS 2017
  2. Create an extension
  3. Right click the vsixmanifest file and select Auto-sync to Resx and Icon Files

Current behavior

Nothing happens.

Expected behavior

Files would be created under the vsixmanifestfile.

VS Crashing with PTVS

Installed product versions

  • OS: Windows 7 64-bit
  • Python version: 3.5.1
  • Visual Studio: 2015 Professional
  • This extension: 1.8.42

Description

visual studio crashes when working with python files, I've to disable this extension to be able to work with python files. please see below for the exception log.
Otherwise love the extension and thanks for the great work.

Steps to recreate

  1. Open a python code file.

Current behavior

It's crashing visual studio upon opening a python file.

Expected behavior

I should be able to work with python files without having to disable this extension.

Exception Log

Time: 2016-05-08T19:54:55
Application: devenv.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.NotSupportedException
at System.Text.Encoding.GetDataItem()
at System.Text.Encoding.get_HeaderName()
at MadsKristensen.ExtensibilityTools.EditorMargin.BottomMargin+<>c__DisplayClass12_0.b__0()
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
at System.Windows.Threading.DispatcherOperation.InvokeImpl()
at System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(System.Object)
at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
at MS.Internal.CulturePreservingExecutionContext.Run(MS.Internal.CulturePreservingExecutionContext, System.Threading.ContextCallback, System.Object)
at System.Windows.Threading.DispatcherOperation.Invoke()
at System.Windows.Threading.Dispatcher.ProcessQueue()
at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
at MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32)
at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr)

[Want] GitHub releases

If possible, could the compiled vsix files be released to GitHub with each release?

Our developer setup scripts automatically download a bunch of extensions we use, and we've recently had a few start breaking because the marketplace links change when new versions are released.

Ideally we'd be able to link to a known good version of your extension/s and then let VS updates do the rest.

This of course can be solved by us cloning a copy or bundling the extensions we use with our setup scripts, but I thought I'd ask anyways.

Auto-sync VSCT fails in native projects

When you right click and try to auto-sync VSCT commands in C++ project (even Extensibility one), it will fail with following exception.

customtoolmissing

It would be nice to handle it better or even hide that option in these kind of projects.

Can't install your extension in new VS"15"Preview

Hi,

Installed product versions

  • Visual Studio: [15 Preview]

Description

At build 2016 Microsoft released Visual Studio 15 Preview.
There are some extensions that work there, but some that are not even searchable in "Extensions and Updates". Yours is one of those that are not searchable and not installable.

Steps to recreate

  1. Install Visual Studio 15 Preview: https://www.visualstudio.com/en-us/downloads/visual-studio-next-downloads-vs.aspx (Visual Studio "15" Preview with new installer)
  2. Open VS15Preview
  3. Open Extensions and Updates
  4. Click on Online in the menu
  5. Search for Extensibility Tools
  6. Your extension doesn't pop up

Current behavior

Your extension is not searchable in new Visual Studio 15 Preview

Expected behavior

Your extension should or could be also in VS15Preview :)

Steps to fix

As I am writing this, one of other extension makers already fixed this issue for his extension here:
cpmcgrath/codealignment#43

You only need to add these:

<VisualStudio Version="15.0">
    <Edition>Pro</Edition>
    <Edition>Community</Edition>
</VisualStudio>

into your .vsixmanifest file into section <SupportedProducts> and it should work. :)

Regards.

System.NullReferenceException throw when opening WPF project in VS Blend.

Installed product versions

  • Visual Studio: [Ent 2015]
  • This extension: [1.9.178]

Description

Replace this text with a short description

Steps to recreate

  1. Open VS WPF project
  2. Open MainWindow.xaml
  3. Add a control to the window's grid
  4. In the Document Outline select that control
  5. In the Document Outline right click, Edit Template, Edit a Copy

Current behavior

When Blends opens, I get a dialog telling me to look in the activity log. Here is the exception that is being thrown by the extension.

  <description>System.NullReferenceException: Object reference not set to an instance of an object.&#x000D;&#x000A;   at MadsKristensen.ExtensibilityTools.EditorMargin.BottomMarginFactory.CreateMargin(IWpfTextViewHost wpfTextViewHost, IWpfTextViewMargin marginContainer) in C:\projects\extensibilitytools\src\EditorMargin\BottomMarginFactory.cs:line 25&#x000D;&#x000A;   at Microsoft.VisualStudio.Text.Utilities.ContainerMargin.&lt;AddMargins&gt;b__25_1(IWpfTextViewMarginProvider mp)&#x000D;&#x000A;   at Microsoft.VisualStudio.Text.Utilities.GuardedOperations.InstantiateExtension[TExtension,TMetadata,TExtensionInstance](Object errorSource, Lazy`2 provider, Func`2 getter)</description>

Expected behavior

No error dialog appears.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.