Search Unity

Will Visual Studio Code replace MonoDevelop

Discussion in 'General Discussion' started by HRoland, Apr 29, 2015.

?

Do you want this to happen as well? :)

  1. Gimme, gimme, gimme!

  2. Why not?

  3. I don't care.

  4. I'm fine with MonoDevelop.

  5. Don't you DARE replace MonoDevelop!

Results are only viewable after voting.
  1. HRoland

    HRoland

    Joined:
    Apr 20, 2014
    Posts:
    2
    FYI: Today on Build 2015 Microsoft announced Visual Studio Code which is like Visual Studio's code editing power + Sublime Text's lightness, flexibility and multiplatform capabilities.

    I have a feeling, that VS Code will be the default, included editor later in Unity.
    What do you guys think? :)

    Here is a download link: http://go.microsoft.com/fwlink/?LinkID=533688
     
    Last edited: Apr 29, 2015
  2. Ostwind

    Ostwind

    Joined:
    Mar 22, 2011
    Posts:
    2,804
    There are already threads about this. It just an option during installer and probably wont be a default setting in future because a lot of people have another edition of Visual Studio installed, the community edition license can be too strict for different game studios and they will continue with MonoDevelop anyways cause of OSX.
     
  3. konsnos

    konsnos

    Joined:
    Feb 13, 2012
    Posts:
    121
  4. dvirus1023

    dvirus1023

    Joined:
    Mar 4, 2013
    Posts:
    51
    He is talking about the new Visual Studio Code, which is a lightweight code editor just released today.
     
  5. luispedrofonseca

    luispedrofonseca

    Joined:
    Aug 29, 2012
    Posts:
    944
    Has someone tried this with a Unity project? I've been running away from MonoDevelop for the past few years (with Xamarin Studio and most recently with Sublime+Omnisharp) but this sounds like the ultimate solution for a Mac user!

    Can't wait to try it!
     
  6. tiggus

    tiggus

    Joined:
    Sep 2, 2010
    Posts:
    1,240
    Looks like you can set breakpoints and do some basic debugging with it - if that's the case it would be a step up from Sublime, looking forward to trying it.
     
  7. Ostwind

    Ostwind

    Joined:
    Mar 22, 2011
    Posts:
    2,804
    Ah ok my mistake then :), I automatically assumed wrongly without reading too much that it was some misinformation news article just like the when .net open source news were posted by non tech sites etc.

    edit: seems weird that MS drum rolled the other edition around the net just a while ago as partnership news with various multiplatform engines and now release another edition(?)
     
    Last edited: Apr 29, 2015
  8. Ostwind

    Ostwind

    Joined:
    Mar 22, 2011
    Posts:
    2,804
    Ok, I tried it quickly and as it says on the page it's a web code editor only and not much or any use in Unity world.

    (already got my hopes up for a visual studio c# like tool for mac :()
     
    Last edited: Apr 29, 2015
  9. Seth-McCumber

    Seth-McCumber

    Joined:
    May 26, 2013
    Posts:
    141
    Also confused that on the top it says "Build and debug modern web and cloud applications.". Is this simply the main purpose, but can be used for other things?
     
  10. Ostwind

    Ostwind

    Joined:
    Mar 22, 2011
    Posts:
    2,804
    It's not for .NET world so it does not support C# stuff other than syntax highlight for .cs file, no project support, no autocomplete, no refactoring tools or anything.

    Its a lightweighted html, css, js text editor and not sure at this point who would use it for even those at current state (it's preview version with very limited features).
     
  11. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,176
    Doesn't interest me in the slightest. If I'm going to be using a tool restricted to Windows, I'll use the full VS IDE. :p
     
  12. dvirus1023

    dvirus1023

    Joined:
    Mar 4, 2013
    Posts:
    51
    It is not restricted to windows. But in its current state, with it not being a full IDE it is not a Monodevelop replacement, but it could replace Sublime for the people that go that route. But it is a step in the right direction, and at some point we will have the full VS IDE on OSX and Linux.
     
    angrypenguin likes this.
  13. Tanel

    Tanel

    Joined:
    Aug 31, 2011
    Posts:
    508
    I mainly do that stuff with PHPStorm but it loads up faster than sublime on my system, so I'll probably replace it for opening single files for quick glances and small edits and such. So, basically a glorified notepad for now :p.
     
  14. Bradamante

    Bradamante

    Joined:
    Sep 27, 2012
    Posts:
    300
    Does this make sense for me as a Mac user, to replace MonoDevelop? I would like to try this out, but I would also appreciate some official word from the Unity Tech folks on this.
     
  15. Seth-McCumber

    Seth-McCumber

    Joined:
    May 26, 2013
    Posts:
    141
    Not in the slightest. Go for Xamarin Studio
     
  16. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,176
    Its a lightweight text editor, not a replacement for a full IDE.
     
    Joviex and angrypenguin like this.
  17. dvirus1023

    dvirus1023

    Joined:
    Mar 4, 2013
    Posts:
    51
    It is slightly more than a text editor, it offers Intellisense and debugging for certain langues/technologies. A pretty good start for now. Javascript, NodeJS and ASP.NET will be debuggable.

    Good for Unity, No.. Good for web developers.. Yes, very much so.
     
    Joviex and Dustin-Horne like this.
  18. StarManta

    StarManta

    Joined:
    Oct 23, 2006
    Posts:
    8,775
    EDIT: Very few of the things said in this post are accurate after you import the .sln file.

    ~~~

    My in-5-minutes review: seems incomplete, inconvenient, and buggy. Yes, even compared to MonoDevelop.

    It has an "error/warning" display, but doesn't seem to actually detect errors as far as I can tell.

    You have to Ctrl-Space to get Autocomplete to show up? How freaking inconvenient is that? Its autocomplete doesn't seem to have any content-awareness at all, either, including for variables that were locally declared (so it's not just a lack of importing the Unity libraries, etc). I don't know what this system is, but it sure as hell isn't Intellisense.

    A huge annoyance for me: Ctrl-backspace has some nonsensical behavior which I'm pretty sure is a bug, and Ctrl-arrow keys don't work at all. (In MonoDevelop, these operate on a "words within variable names" level)

    So, basically, it appears that they've stripped Visual Studio down to utter uselessness. Don't waste your time, or your optimism.
     
    Last edited: May 1, 2015
  19. Bradamante

    Bradamante

    Joined:
    Sep 27, 2012
    Posts:
    300
    I was told here that Xamarin Studio and MonoDevelop are pretty much the same?

    Maybe, but some of the advertised features are more advanced than that?

    I mean, do you use MonoDevelop on Mac OS X? Unity Tech has fixed some bugs over the past few months, but many remain. Some keyboard shortcuts still don't work (like jumping to a function, which doesn't jump to a line, but where you were last time you worked on that file), the code completion hints can't be color-configured which makes bright-on-dark color schemes less useful etc.
     
  20. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,176
    I don't use MonoDevelop at all. But then I'm only on Windows so that's part of the reason.
     
  21. StefanoCecere

    StefanoCecere

    Joined:
    Jun 10, 2011
    Posts:
    211
    i think it's got a long way to substitute MonoDevelop (or Xamarin Studio that i happily use)

    what impresses me is that Microsoft is developing Visual Studio Code over Chrome technology (just like Atom editor!!!!)
     
  22. Ox_

    Ox_

    Joined:
    Jun 9, 2013
    Posts:
    93
    I'm totally pro-VS because I'm using OS X and have no plans to leave Unity development or move to Windows. ;)

    And MD is not that good.

    Let's vote meanwhile:
    http://visualstudio.uservoice.com/f...io-code/suggestions/7752702-unity-integration

    That's not correct:
    https://code.visualstudio.com/Docs
    Visual Studio Code includes built-in support for always-on IntelliSense code completion, richer semantic code understanding and navigation, and code refactoring.
     
  23. Dustin-Horne

    Dustin-Horne

    Joined:
    Apr 4, 2013
    Posts:
    4,568
    I don't think Code is a replacement for a full blown IDE. It does support full blown solutions. I opened an MVC 5 solution in it today that has 11 solution folders and 35 projects and it kept everything intact. However, it only supports running and debugging for Mono and NodeJS at the moment so it's not even worth testing for everything else.

    It may be a good replacement eventually for people who use things like Sublime or Notepad++ as a basic code editor but I don't think it's ever intended to be a full blown IDE.
     
    Flipbookee and angrypenguin like this.
  24. StarManta

    StarManta

    Joined:
    Oct 23, 2006
    Posts:
    8,775
    I'm not sure what it's talking about in that line - the discussions suggest it does those things for Web code & javascript - but it DEFINITELY does not do any of those things for C# in a Unity project.
     
  25. Ox_

    Ox_

    Joined:
    Jun 9, 2013
    Posts:
    93
    All I need from an editor:
    • project-level auto-completion
    • snippets
    • "go to declaration"
    • rename
    • breakpoints
    So I can't see why VSC can't replace MD for me when these features will be implemented.
    That's because it's still a preview.
     
  26. Dustin-Horne

    Dustin-Horne

    Joined:
    Apr 4, 2013
    Posts:
    4,568
    @Ox_ it may be able to do those things, but it likely isn't going to support plugins, thus probably no Unity debug integration. That's just speculation though.
     
  27. tiggus

    tiggus

    Joined:
    Sep 2, 2010
    Posts:
    1,240
    Language support isn't there yet for me, almost seems like they realized VS is overkill for web developers who just want to do JS or Typescript and split it out and made it multiplatform. I'm looking for something that supports Go and Python mainly which Sublime does a good job of with plugins.
     
  28. Dustin-Horne

    Dustin-Horne

    Joined:
    Apr 4, 2013
    Posts:
    4,568
    @tiggus I'm assuming it will get more support though. At a minimum they'll need to have some kind of console and make it easy to use tools like grunt and jasmine
     
  29. IQpierce

    IQpierce

    Joined:
    Jan 24, 2011
    Posts:
    43
    I just configured Code as my external code editor in Unity and made sure the box to allow debugger attaching was checked.

    I then did "Sync MonoDevelop project" from the Editor. I don't think that did anything, since Code doesn't deal with project files.

    I switched to the Debugging tab of Code, chose "Attach" from the configurations list, and hit Run... I get an error:

    "Cannot start OpenDebug because Mono (or a Mono version >= 3.10.0) is required"

    Does anyone know what this means? Is there a way I can install Mono for Code, or on a system-wide basis on my Mac, such that this might work?
     
  30. Ostwind

    Ostwind

    Joined:
    Mar 22, 2011
    Posts:
    2,804
    I don't think this app is ever going to be for anything but web development as its even titled like that on web and announcement news. It's far from decent IDE and probably has no VS .NET projects style stuff in the roadmap at the level that it would ever replace MonoDevelop. Most of the posts and comments around the net seem to indicate that this is primarily fast and light web editor and debugger with quick repo access.

    Like I said it has no autocomplete for the .NET world, like as in knowing the context its invoked. Now it suggests all words it finds from the open document which is useless. The refactoring it has is a simple text replace tailored for web development type files.
     
  31. MatthewW

    MatthewW

    Joined:
    Nov 30, 2006
    Posts:
    1,356
    This is incorrect.

    - In Unity, "Sync MonoDevelop Project" to generate your solution files (if they aren't there already)

    - Open your root project folder in Visual Studio Code.

    - In the lower-left, next to the flame icon, click "pick a project":

    Screenshot 2015-04-29 14.43.50.png

    - Select your -csharp.sln file:

    Screenshot 2015-04-29 14.45.08.png

    Autocomplete for Unity classes:

    Screenshot 2015-04-29 14.45.52.png

    And for .NET classes:

    Screenshot 2015-04-29 14.46.44.png
     

    Attached Files:

    Fab4, _Radagan, NathanFlurry and 10 others like this.
  32. Pixelnest

    Pixelnest

    Joined:
    Oct 25, 2013
    Posts:
    27
    It does have auto completion. You have to setup the solution file by clicking on the fire icon at the bottom left of the interface.

    If it does prompt you for mono >= to 3.10, install mono with homebrew (on OSX). It should work then.

    I didn't try it much for the moment, but it seems to be fairly decent, at least to replace Sublime (I don't like MD at all, so I'm unable to compare).

    Update: someone did a better job than me. Just look above. ;)
     
  33. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,176
    I don't see why you couldn't already be using Sublime. All of those are covered either by base features or plugins. There even appears to be a project working towards an IntelliSense-like plugin for Sublime.

    https://github.com/quarnster/completion
     
  34. IQpierce

    IQpierce

    Joined:
    Jan 24, 2011
    Posts:
    43
    Including breakpoints? I.e. the ability to connect to a debugger? I never saw a solution for debugging Unity with SublimeText.

    I'm excited to hear that the Intellisense features seem to work with the existing vsproj setup... I'm installing Mono with Homebrew on my Mac now to try some more! If debugging will work I'll be so stoked.
     
  35. IQpierce

    IQpierce

    Joined:
    Jan 24, 2011
    Posts:
    43
    Confirmed that Intellisense is working! It doesn't even require hitting Ctrl+Space to initiate autocomplete, once the project has been imported (see MatthewW's instructions above).
     

    Attached Files:

  36. luispedrofonseca

    luispedrofonseca

    Joined:
    Aug 29, 2012
    Posts:
    944
    I'm trying to attach the debugger to the Unity process but no luck... Anyone with a clue?
     
  37. goat

    goat

    Joined:
    Aug 24, 2009
    Posts:
    5,182
    Very good of MS to make it easier to publish apps/games from other platforms to Windows Platforms. It is a smart business decision and one that leads to selection of cheap HW that supports Windows. Sort of Apple's undoing the 1st time. Chrome OS has a long way to go to catch up to Windows in the business and government arenas..
     
  38. IQpierce

    IQpierce

    Joined:
    Jan 24, 2011
    Posts:
    43
    I'm unable to get it to attach either. It appears to have a configuration option for attaching to Mono; this is at the bottom of the file that it opens if you hit the "gear icon" button at the top of the Debug panel:

    {
    "name": "Attach",
    "type": "node",
    // TCP/IP address. Default is "localhost".
    "address": "localhost",
    // Port to attach to.
    "port": 2550
    }

    ...I changed that number to 2550 from the default. I assume that connection via a port like this is how MonoDevelop et al connect to the Unity debugger, so maybe we just need to try the right port and this would work?

    Maybe not, I just stumbled on the source for the plugin that allows MonoDevelop to attach to the Unity debugger (https://github.com/Unity-Technologies/MonoDevelop.Debugger.Soft.Unity), and it doesn't seem to use this kind of approach, it attaches to a process by ID, rather than to a local port.

    I'm running into the limitation of my knowledge about how this sort of stuff works. It would be nice if someone could figure out how to get this debugger to talk to Unity's debugger, since it appears to use Mono... if MonoDevelop can do it (and we have the code for how it does it), then hopefully there will be a way to do it in this tool too.
     
  39. IQpierce

    IQpierce

    Joined:
    Jan 24, 2011
    Posts:
    43
    I just noticed that config file also contains:

    // Type of configuration. Possible values: "node", "mono".
    "type": "node",

    but I think I need to change more than just this "type" for it to find and connect to the Mono process. And it's possible that Unity's debugger is a variant that would need some special mode added, as appears to have been the case for MonoDevelop.

    I wonder how hard it is to extend Code's debugging options? I'm out of time to look into this for now, but I hope someone else keeps poking at it!
     
  40. luispedrofonseca

    luispedrofonseca

    Joined:
    Aug 29, 2012
    Posts:
    944
    I got to the same point as you @IQpierce, but no luck as well... Hopefully one the Unity guys will give us a hand.

    Another thing I was trying to do was to hide all those ugly .meta files as well as the unnecessary folders (Library, obj, Temp) because it gets a bit confusing.

    All in all, this is definitely going to be an awesome alternative to MonoDevelop, Xamarin Studio and Sublime for all Mac users!
     
    rakkarage likes this.
  41. wkwan

    wkwan

    Joined:
    Sep 14, 2014
    Posts:
    27
    Haha me too. I also tried switching the type to "mono" and pluggin in the Unity's port #, didn't work. But even without a debugger, I like it better than MD. Searching and typing is faster, the intellisense doesn't seem to stupidly complete with the wrong things all the time, and the autoformat works properly.
     
  42. darksirikan

    darksirikan

    Joined:
    Jul 23, 2013
    Posts:
    2
    It would be a nice option for mac developers but I don't see it replacing VS Pro for me.
     
  43. wkwan

    wkwan

    Joined:
    Sep 14, 2014
    Posts:
    27
    Visual studio has a ton of useless features I never use. I wouldn't mind using something with a cleaner interface if editing and debugging works just as well.
     
    Whippets and IQpierce like this.
  44. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,620
    How did you do that? When I try it just opens the solution for viewing as a text file.

    Edit: Ahh, eventually the select project button came up a-la @MatthewW's post above, and then everything was groovy. :D
     
    Last edited: Apr 30, 2015
    TokyoDan likes this.
  45. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,620
    As a text editor it's super nice, but I gave up on Sublime for Unity in particular when I looked at a dozen steps of instructions involving multiple plugins for getting it to work.
     
    IQpierce and Ryiah like this.
  46. TokyoDan

    TokyoDan

    Joined:
    Jun 16, 2012
    Posts:
    1,080
    Same here.
     
  47. Dustin-Horne

    Dustin-Horne

    Joined:
    Apr 4, 2013
    Posts:
    4,568
    I actually just used the Open Folder button (or something to that effect) and chose the folder that had the solution in it... But given that it also showed the .csproj and .sln files I dont' think it actually opened the folder... it did show our solution folders but if I recall we actually created physical folders to match.
     
  48. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,620
    Did it give you IntelliSense? For me that only worked correctly after I did the "Select project" thing.
     
  49. larku

    larku

    Joined:
    Mar 14, 2013
    Posts:
    1,422
    Even a Linux version... MS, you surprise me..

    I use Eclipse for C++ development on Linux and although I really liked it many years ago it is feeling really aged these days..

    I'm keen to try this out.... (downloading now)..
     
    darkhog likes this.
  50. Dustin-Horne

    Dustin-Horne

    Joined:
    Apr 4, 2013
    Posts:
    4,568
    @angrypenguin I didn't even try to be honest... it was a production product that's all source controlled through TFS so I didn't really want to dick with any of the files in Code. Was just curious as to whether it would open them.
     
    angrypenguin likes this.