Visual Studio 2019 for Mac version 8.1 is now available (and a Preview for 8.2)

Cody Beyer

Cody

Todaywe are excited to announce the release of Visual Studio 2019 for Mac version 8.1 along with the first preview of Visual Studio 2019 for Mac version 8.2. Both releases contain exciting new features as well as improvements to performance and stability across the IDE. You can download the latest update on the Visual Studio download page or update an existing installation via the Updater within Visual Studio for MacYou can find release notes for both the stable and preview releases on our Release Notes page. We’ve also updated our Roadmap to give you a look at whatcoming over the next 3 months in versions 8.2 and beyond – including updated web editors, support for projects using multiple target frameworks, and solution-level NuGet package management! 

Visual Studio 2019 for Mac version 8.1 

Version 8.1 continues to expand on the improvements we’ve brought to Visual Studio for Mac with new features added to the C# code editor as well as new ASP.NET Core templates.  

The new editor, which was initially announced as a preview feature in Visual Studio 2019 for Mac version 8.0is now the default editing experience for C# filesThe new editor features an updatedfully native UI built on top of the reliable Visual Studio foundation. You’ll find several additional features that close the gap between the old and new editor in addition to some that were explicitly requested by the Visual Studio for Mac user community. These features include: 

  • Faster code generation through code snippets 
  • Improved analyzer functionality with inline lightbulbs 
  • Improved multicaret functionality 
  • Quick navigation via Document Outline and an improved Go to Line implementation  
  • Faster editing with drag and drop across views 

One of the most requested features from our users was the ability to utilize code snippets within a C# file. They’re a great way to quickly add blocks of common code to your project, such as properties and constructors, by leveraging the power of IntelliSense. Visual Studio for Mac now contains dozens of built-in snippets and allows you to easily expand the default library with custom ones using the Code Snippets editor within Preferences.  

Another feature we’ve added to help increase your coding efficiency is inline lightbulbs for C# projects.  For cases where you’re looking for alternative code suggestions or trying to find that code error that stops your code from building, inline lightbulbs help you refine your code and quickly detect errors in real-timeAll it takes to apply a suggested fix is a few clicks of the mouseallowing you to quickly get back to codingAnd because the logic powering these suggestions is shared with Visual Studio on Windows, you’ll always be up to date and have support for the latest analyzers.  

The latest version also brings improved navigation and editing shortcuts, such as the Document Outline and a brand-new Go to Line implementation. The new editor also supports the ability to drag and drop code across files within your project. All these improvements have been implemented with your improved productivity as our primary focus, empowering you to write better code, faster. 

In addition to the new C# editor features, you can now edit Android layout files side-by-side with a real-time designer view. This experience allows you to see changes you make to an Android layout file on the fly as you are editing, greatly improving the efficiency while editing these files. 

Finallywe’ve introduced a handful of improvements to performance and stability, updated ASP.NET Core project templates, and refined the component selection process at install based on your feedback. 

Visual Studio 2019 for Mac version 8.2 Preview 

As we mentioned earlier in this post, today we’re also releasing the first preview of Visual Studio 2019 for Mac version 8.2. In order to use the 8.2 Preview, you can easily switch to the Preview channel within Visual Studio for Mac. 

Improved XAML Editing Experience 

The 8.2 Preview release introduces new XAML and AXML editing experiences based on the same core as the new C# editor as well as the XAML language service from Visual Studio on Windows. These components provide improved XAML and AXML editing experiences, including more accurate and powerful IntelliSense, faster performance, better matching, improved linting, and an overall increase in the reliability of the editing experience. You can enable the new XAML editor via Visual Studio > Preferences > Text Editor > Behavior > XAML and selecting “Enable new XAML language service”.

One of the advantages of the new XAML Language Service with Visual Studio for Mac is that you now have access to much improved matching capabilities. For example, completions now support fuzzy matching, substring matching, and CamelCase matching, reducing the time it takes to find keywords without the need to perfectly match casing. Examples of the new matching patterns supported in the XAML editor include: 

  • Substring Matching: Matches will be listed when you type a part of a string, even if it is in the middle of the string. This is a great feature if you recall a section of a command, but not the entire command. Typing “Lay” will match “StackLayout” along with any other string which contains “lay”. 
  • Case Insensitive Matching: If you can’t recall the exact casing of a string you’re trying to find, case insensitive matching will ensure you can still find what you’re looking for. With support for this kind of matching, typing “stack” will match to “StackLayout. 
  • Fuzzy Matching: Typing any portion of a string will provide a list of matching and like matches. If you type “stck”, StackLayout will still appear as an option. 

You’ll also see improvements to suggested completions in a wide variety of scenarios for XAML, including light bulb suggestions and binding, resource, XMLNS, and markup extension completion, allowing you to write code faster and more accurately. 

.NET Core 3 and C# 8 Preview 

At Build 2019, we highlighted the next evolution in the .NET Core ecosystem.NET Core 3With it comes improved performance, streamlined project files, and an updated deployment experience. You can learn more about the new features and fixes offered in .NET Core 3 through the What’s New documentation. 

In addition to .NET Core 3, Visual Studio for Mac 8.2 also offers a preview of support for C# 8. This next generation update of C# continues to improve upon the solid foundation of C# through the integration of language features to help you write powerful code in less time. You can learn more about some of the new features in C# 8 through our documentation. 

Improved Android XML editing experience 

Android layout and resource file editing is now powered by Visual Studio for Mac’s new editorThis means that you will be able to experience all of the rich editing experiences and performance that you see in the C# editor in your Android layout files. These enhancements include improved IntelliSense, go-to-definition, and semantic editing of your files, all within Visual Studio for Mac. 

Download and try today 

We encourage you to download and try out the version 8.1 release todayWe hope this release brings us one step closer to our goal of providing you with the right tools to make .NET development on macOS a breeze.  

We also invite you to try the 8.2 Preview 1 release of Visual Studio 2019 for Mac if you’re interested in benefiting from the new XAML editor and in helping us build a better product by providing feedback and suggestions. As always, if you come across any bugs or issues, please use thReport a Problem feature to help us to improve this new experience and make each release as powerful and reliable as possible. 

Cody Beyer
Cody Beyer

Program Manager, Visual Studio for Mac

Follow Cody   

10 comments

Comments are closed.

  • Avatar
    Stefan Wouters-Yaowanasap

    I’ve been using Visual Studio Mac daily for a while now, and while I appreciate having a fully supported IDE available on Mac, it’s buggy: 

    – Region folding (by default) does not work at all (https://developercommunity.visualstudio.com/content/problem/515711/regions-does-not-fold-on-default.html
    – Having tab size set to 3 and using tabs instead of spaces causes all kinds of problems with indentions (it adds extra spaces) (https://developercommunity.visualstudio.com/content/problem/402111/wrong-indenting.html
    – Since 8.1, pressing enter while holding Shift does not work anymore (it used to insert a line-break) (https://developercommunity.visualstudio.com/content/problem/609491/linebreak-no-longer-works-in-c-when-i-press-shifte.html
    – Since 8.1, pressing Shift-tab to un-indent does not work anymore (https://developercommunity.visualstudio.com/content/problem/609492/when-i-press-shifttab-the-selected-code-lines-dont.html
     
    Overall, the performance of the editor is great, I can see rapid progress being made. It’s also nice that MonoDevelop (on Linux) picks up a lot of these improvements. But I think version 8.1 may have been released a bit too soon.

    • Cody Beyer
      Cody Beyer

      Hey,

       

      Thank you for your reply! I have looked through each of these issues, and want to provide an update on each.

       

      Regarding Code Folding, we are now targeting 8.3 to have full support for these scenarios, though we may be able to add this to 8.2. When we migrated the Visual Studio for Mac code editor to be based upon the Visual Studio for Windows editor, we inherited a ton of functionality that we didn’t have before, but we also lost a few features that VS for Mac had which VS for Windows did not. While folding is support in VS Windows, region folding is not the same as it was previously in VS for Mac. As such, we need to ensure we implement it in such a way that respects the old behavior without compromising the shared approach with Windows.

       

      Regarding the tab sizing, I am going to check in with the editor team on this one. I see the Developer Community ticket was marked as Closed; I am going to reopen the ticket and have the editor team investigate.

       

      For the linebreak and shift-tab issues, I have ensured that there are internal tasks to review these items, and that our engineers are aware of the issues. I can’t provide a timeline at this point, but we will be keeping the Developer Community tickets updated.

       

      Finally, to address your final point, I am happy to hear that you can see the progress and feel the improvements. It is important to us that the hard work we commit to the IDE directly improves the experience of our developer community. I will bring your feedback to the team, both regarding the improvements and the haste, and we will use this, and other, feedback to inform future release plans.

       

      Thank you!

      • Avatar
        Stefan Wouters-Yaowanasap

        Overall, I am just very happy with the great job you’re all doing at constantly improving our (developers) daily experience when using Visual Studio, on all platforms. Keep up the good work, and thank you!

  • Avatar
    Stefan Wouters-Yaowanasap

    I’ve been using Visual Studio Mac daily for a while now, and while I appreciate having a fully supported IDE available on Mac, it’s buggy: 

    – Region folding by default does not work at all (https://developercommunity.visualstudio.com/content/problem/515711/regions-does-not-fold-on-default.html)
    – Having tab size set to 3 and using tabs instead of spaces causes all kinds of problems with indentions (it adds extra spaces) (https://developercommunity.visualstudio.com/content/problem/402111/wrong-indenting.html)
    – Since 8.1, pressing enter while holding Shift does not work anymore (it used to insert a line-break) (https://developercommunity.visualstudio.com/content/problem/609491/linebreak-no-longer-works-in-c-when-i-press-shifte.html)
    – Since 8.1, pressing Shift-tab to un-indent does not work anymore (https://developercommunity.visualstudio.com/content/problem/609492/when-i-press-shifttab-the-selected-code-lines-dont.html)
    (I will report the bugs, or provide feedback to existing bugs, btw)

    Overall, the performance of the editor is great, I can see rapid progress being made. It’s also nice that MonoDevelop (on Linux) picks up a lot of these improvements. But I think version 8.1 may have been released a bit too soon.

  • Avatar
    Miguel Muñoz L

    I installed the visual studio 8.2 preview and Intellisense doesn’t work. I try check and uncheck the option in Behaviors, restart Mac and quit and reopen without any positive result. Has Stefan says, collapsing block of XAML doesn’t work too.

    • Cody Beyer
      Cody Beyer

      Hey,

      Are you seeing this in a fresh app? That is to say, if you create a new Xamarin.Forms app and attempt to edit the XAML, does IntelliSense fail?

      Thanks!

  • Avatar
    baron chng

    Hi Cody, since this new update, I am unable to autocomplete the lambda function, for example in callback:
    methodWithCallback.doSomething((event, args) => { });
    I couldn’t autocomplete the bold+italic part anymore. I have to type something and scroll to the top to find the suggested completion. Am I missing some new changes here or is this unintended?

  • Avatar
    Jeffrey Supit

    I’m using Visual Studio 2017 for Mac for developing Unity app, and I’m “stuck” with VS 2017 version 7.7.4.1. Its the version which has the #region foling actually work. I tried Visual Studio 2019 for Mac version 8.1.4.5 and I must say I really like everything in it except for some reasons:
    1) All #region unfolded when opening file.
    2) Selecting multiple lines.
    3) The renaming function sometimes stop working.
    4) The intellisense function sometimes stop working.
    I can handle #region folding issue. As a matter of fact, I love the copy pasting. It now can copy and paste FOLDED #region.
    Now, here’s how I select lines: I tripple click then I drag down the mouse to select multiple lines. It works fine until I have to select dozen of lines and have to scroll down the codes. It rather impossible to stop where I want it. The scrolling and the vertical mouse movement seems binded together. It will scroll back up whenever I move my mouse up a bit to make adjustment.
    I’m not sure why the #3 happens. Maybe when I switch back and fort to Unity, I’m not sure. The renaming function can be restored by closing and reopening the solution. Not really a problem, I do sometimes have to close and reopening solution for other reasons as well. One of many reasons why I #region folding is important for me.
    The #4 is the “deal breaker” for me. I don’t know how to restore it without restarting Visual Studio itself. I don’t really rename things that often but having to restart VS every few hours is too much for me. I used to have VS 2017 open for days without a problem.
    Overall, I like the improvements. I can handle working with most bugs. What I don’t understand is the regression of these problems. I don’t feel like: newer is better especially dealing with VS for Mac. In my opinion, regression is somewhat reflecting the quality of the coding. Everytime you touch something in the code, something else broken? That is not really good impression let alone how long it takes to be fixed. I don’t know what happen inside there in your company, something is not right.

    • Cody Beyer
      Cody Beyer

      Hey,

      Sorry to hear to hear about the issues you are facing. Lets look at each issues one-by-one

      1. Region state persistence 

      We currently have an open work item to add this feature to VS for Mac, though we do not have an exact date as to when we expect this to be released. We do tend to prioritize features based on feedback and requests from our community, so I will be sure to +1 this feature for you 🙂

      2. Selecting Multiple Lines

      I am not sure what exactly you mean here. Are you able to provide some more details regarding issues you are having selection multiple lines?

      3. Rename function stops working

      We are aware of this issue, and we are working to resolve it. As it is an intermittent issue, we are looking for steps that allow for us to reproduce the issue reliably. Are you able to provide more details as to the circumstances under which this issue is occurring for you?

      4. IntelliSense stops working

      This is similar to number 3. We are looking at this issue and we are trying to find circumstances where it reproduces. Are you able to provide some further details about the issue. If you have steps to reproduce the issue or a test project, that would be super helpful.

      Thank you and please let me know if we can assist further.