nord icon indicating copy to clipboard operation
nord copied to clipboard

Port for Visual Studio

Open zpreston123 opened this issue 6 years ago • 22 comments

Any plans for developing a theme for Visual Studio?

PS: Looking forward to the Sublime Text version as well.

zpreston123 avatar Nov 11 '17 23:11 zpreston123

Interested in both !

iiNku avatar Dec 07 '17 13:12 iiNku

Someone send me an email yesterday with a request for this port project including a notice that there is finally a new theme editor available now for VS 2017. I'll read their documentation as soon as I've got some free time to understand their theming API. (and installed a VM with Windows to actually test- and develop it :smile: )

arcticicestudio avatar Dec 07 '17 15:12 arcticicestudio

Any update to this so far?

earlpeterg avatar Jan 17 '18 10:01 earlpeterg

I'm always happy for any help to get a new port project up and running. Feel free to post a Gist or upload code in this issue which might help other users to get started. As long as there is no official repository, users can transitionally use the content in this issue to use a theme prototype locally.

Please note that my current life situation doesn't allow me to spend as much time on my projects as before like announced on Twitter so I've added this port project to the Backlog Icebox for the time being. It might take some time to test things out, but I'll try to reserve some free time on the weekends.

arcticicestudio avatar Jan 20 '18 07:01 arcticicestudio

Check out https://github.com/alexanderte/dainty-vs It's a theme generator for VS and Nord is one of available presets. It's not pixel perfect but it's a good start.

ArturMroz avatar Apr 04 '19 17:04 ArturMroz

Any update on this? This is one of the only major editor left. Nord all the things, this theme is so good!

Tom1206 avatar Sep 05 '19 14:09 Tom1206

@ArturMroz Thanks a lot, this looks indeed like a great starting point. @Tom1206 All open issues in this repository are still planned, but the data transition of all port projects to the shiny new website and documentations is really time consuming so the queue for new port projects is currently not being processed.

arcticicestudio avatar Sep 05 '19 18:09 arcticicestudio

Decided to start tackling it at least for Visual Studio 2019. Thoughts so far? https://github.com/jwendl/nord-vs-theme

jwendl avatar Jan 04 '20 08:01 jwendl

@jwendl Sorry, unfortunately your comment got lost in my large amount of notifications. I've checked both the official 2017 and 2019 theme editors, but they were too limited and the massive amount of keys, in combination with almost no documentations for them, made me shy away from continuing to work on an official theme. Anyway, see my next comment for the good news :wink:

arcticicestudio avatar Sep 23 '21 19:09 arcticicestudio

Totally understandable. While not an expert in the area, there is a lot of undocumented options when customizing Visual Studio that involves reverse engineering.

Yeah the theme editors definitely don't expose all of that functionality for the Visual Studio theme options.

jwendl avatar Sep 23 '21 19:09 jwendl

This issue is really old and kind of a shopkeeper in this repository. Time to change that.

I and other authors of popular Visual Studio Code themes were invited to collaborate and test a new tool during the development/beta phase: an official theme converter for Visual Studio which allows to convert Visual Studio Code themes to Visual Studio, e.g. the Nord Visual Studio Code theme. The tool is now publicly available as CLI and I'm happy to announce the result from this private phase: Nord Visual Studio.

Preview image of Nord for Visual Studio

This all is possible due to the new Visual Studio custom theme feature which is available as of Visual Studio 2022 Preview 3 or higher. At the same time this VS version is also the minimal requirement to use the theme. The theme itself is available from the marketplace and can be installed from within Visual Studio. Note that the theme is currently an extension preview which means it is work in progress, not completed yet and can change at any time while the project is still in development major version zero 0.y.z. There is also currently no repository but only the compiled VSIX (extension format) itself from the marketplace, but this will change in the next weeks so that the theme is fully open source and everyone can work it. The reason is simply that my free time is limited and I don't want to publish a repository with a mess of testing and debugging traces :wink:

I'll post updates here as soon as the repository is available, but also look out for new theme versions from the marketplace which will be published from time to time when the theme converter gets updated continuously. Make sure to read the official Visual Studio custom theme announcement blog post and the introduction during the "Visual Studio Toolbox Live" live stream.

arcticicestudio avatar Sep 23 '21 19:09 arcticicestudio

@jwendl Oh, and you probably already knew all of that even before me because you're working right at the origin of this tool 😆

arcticicestudio avatar Sep 23 '21 19:09 arcticicestudio

The first iteration looks amazing! Will definitely check that out.

Will keep my eye open for it to hit a repo and see what we can tweak on the theme together.

jwendl avatar Sep 23 '21 20:09 jwendl

Not sure if I'm the only one but on VS 2022 Preview 5.0, I cannot select Nord as a Theme, even though I have it installed (I installed it from the Marketplace)

Zoltan-Balazs avatar Oct 18 '21 13:10 Zoltan-Balazs

+1

pasqualedante avatar Oct 19 '21 15:10 pasqualedante

I cannot select it in Preview 6 either! It says it is installed, and there were no errors.

itniels avatar Oct 25 '21 12:10 itniels

Same problem here.

marcLeb avatar Oct 30 '21 00:10 marcLeb

Same problem with the full release of VS2022 that dropped today.

davidgarland avatar Nov 08 '21 19:11 davidgarland

As a temporary stopgap, I've run the theme converter on the vscode theme to get the raw pkgdef file. To use this theme, unzip and place the .pkgdef file in C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\CommonExtensions\Platform, then restart visual studio. .pkgdef files are plain text if you want to validate the contents. nord-color-theme.zip

milesflavel avatar Dec 15 '21 06:12 milesflavel

The uploaded extension worked fine during the preview versions of VS 2022 and it is just sad to see that it breaks when trying to install it in a stable software version. Unfortunately it is the pure pain to build anything for a wild pile of code junk like Windows. Sorry for the rough choice of words, but I've been a proud non-Windows user (except one throwaway Windows 7 gaming system) and trying to support a project for Windows eats more time than trying to solve dark matter theory problems. I've only access to Windows through VMs and the one I used to build the extension is broken because one of the 54156195 Windows updates simply killed itself. After setting up a fresh one the dotnet CLI throws cryptic errors when trying to build the converter while trying to build it from within VS itself throws hundreds of errors regarding missing NuGet packages. This is UX 101, it should work out-of-the-box and every minute of my precious and little spare time I spend on this non-sense problems makes me mad. I installed another pile of meaningless runtime packages and now I've run out of disk space in the VM which eats ~45GB just for a SINGLE APPLICATION. Resizing is not possible because Windows is too dumb to extend a partition where the unallocated disk space is not located right next to the target partition and moving is no possible because it will break the boot partition (even third-party tools like GParted fail). All I can do is to create a new VM for the third time, but my host system also runs low on disk space so it is not possible to provide that much space to the VM. I'm posting this here because no one sees the pain that comes with the development of such port projects. All I'd like to do is to compile the converter and extension from a "real" OS with a standard tool chain, otherwise I don't see any way to support this port project. And yes, I know that there are ways to use a managed VM like e.g. one from Azure, but as long as this is not sponsored the last thing I'd do is to spend my personal money to pay for it. My patience for the support of commercial platform ports is as good as exhausted and without the help from others I no longer see myself in the position of further destroying my nerves with such topics.

arcticicestudio avatar Dec 25 '21 11:12 arcticicestudio

@arcticicestudio, I just wanted to say that I appreciate the hard work you do, and I understand that maintaining the ports is an enormous amount of work. Thank you for creating this awesome theme. I use it across my system, and I stare at it for hours every day. You created a great project that is loved & used by many. Not only the theme but everything around it. The effort you put into the documentation shines through.

Please take care of yourself and take a break when you need it.

Merry Christmas & happy holidays :)

Bad3r avatar Dec 25 '21 14:12 Bad3r

After a long break I would like to give an update regarding the development. With my new M1 MacBook I was finally able to unblock the VM showstopper. The CPU and system at all is pure engineering perfection and if I'd like to I can run multiple VMs at the same time. I haven't heard the fan once in the last few months of use (so not sure if there's even one installed 😁) while running almost 15+ more or less heavy apps. This is what a OS and hardware harmony should look like. Thanks to the new MacBook I was able to run a Windows 11 (ARM64) VM without any problems using the fantastic open-source and macOS specific UTM application that uses Apple's native APIs (e.g. “Metal“ for rendering) and makes VMs run almost faster than if installed bare metal. But enough of the engineering enthusiasm. Even though the theme was working for Visual Studio version later than Preview 3 (including stable releases) by patching the theme with the VS theme converter, this was not the way to go for many non-technical users and I was spammed with annoying "pls fix theme" reports through multiple communication channel like email and rating comments on the marketplace. To mitigate this and make the theme available for the ready quantity for testing and feedback I've uploaded extension version 0.2.1 which is enabled for the global theme selector. Please note that the theme is still in the early development phase and things might change at any time. The repository with the code will be made public when I have a good feeling that the project is ready to be released for further development by the community without me having to worry about spending hours answering questions about known problems that should be clear for beta versions. Of course, that doesn't mean that I don't expect any feedback here, but rather that I always welcome technical and constructive criticism and hope that this long-awaited theme will live up to your expectations and whishes.

svengreb avatar Jun 03 '22 07:06 svengreb