Can I install the Custom Document Well (vertical tabs) extension for Visual Studio 2019?

Update #2

Vertical tabs are out of preview and are now officially part of Visual Studio 2019 v16.4!

Update #1

The new "Vertical Document Tabs" feature is part of Visual Studio 2019 version 16.4 Preview 2. There is also a dedicated blog post.


Original answer

  1. Download CustomDocWell.vsix
  2. Unzip the file, e.g. rename it to CustomDocWell.vsix.zip and extract the contents
  3. Download the workaround extension.vsixmanifest (non-raw page)
    • The only change is that the upper bound of the InstallationTarget version has been removed
  4. Replace the original extension.vsixmanifest with the workaround file
  5. Download the workaround manifest.json (non-raw page)
    • The only change is the sha256 for extension.vsixmanifest has been recalculated
  6. Replace the original manifest.json with the workaround file
  7. Zip the contents into a new CustomDocWell.zip
    • Important: Make sure the root of the zip file is at the level of extension.vsixmanifest and manifest.json, as well as the other files and folders. The root of the zip file should not be a folder named CustomDocWell.
  8. Rename to CustomDocWell.vsix
  9. Run the VSIX file

If you don't get any errors you'll still get a warning when you open Visual Studio 2019:

Deprecation warning

The extension will still work; the Learn more link explains more.

The settings are under Tools > Options > Productivity Power Tools > Custom Document Well.

Errors

If you get an error it's likely that the sha256 of extension.vsixmanifest is incorrect. You can try calculating it on your own (PowerShell has Get-FileHash) and putting it in manifest.json.


For this workaround to work with VS 16.1, just click "Allow synchronous autoload" in the warning banner and restart VS. It will allow the use of the deprecated sync APIs... until the feature comes build in !

For those who have hidden the banner, check this option: Options/Environment/Extensions/Allow synchronous autoload of extensions


In addition to Andrew Keeto's answer: After step 4, in extension.vsixmanifest in the section Add:

<InstallationTarget Version="[15.0,)" Id="Microsoft.VisualStudio.Pro" />
<InstallationTarget Version="[15.0,)" Id="Microsoft.VisualStudio.Enterprise" />

Or update the max version:

<Installation InstalledByMsi="false">
    <InstallationTarget Version="[15.0,17.0)" Id="Microsoft.VisualStudio.Community" />
    <InstallationTarget Version="[15.0,17.0)" Id="Microsoft.VisualStudio.Pro" />
    <InstallationTarget Version="[15.0,17.0)" Id="Microsoft.VisualStudio.Enterprise" />
</Installation>
<Prerequisites>
    <Prerequisite Id="Microsoft.VisualStudio.Component.CoreEditor" Version="[15.0,17.0)" DisplayName="Visual Studio core editor" />
</Prerequisites>

I've recalculate the SHA265 for the manifest.json at https://emn178.github.io/online-tools/sha256_checksum.html and replaced it with the sha265 code for extension.vsixmanifest