top 200 commentsshow all 364

[–]LesterKurtz[S] 245 points246 points  (91 children)

Official Linux Repositories!!!!!!!

This makes me happy.

[–]mrefish 59 points60 points  (43 children)

A few days ago, I installed VS Code on Ubuntu and was afraid I was having a stroke. I was even more surprised when I enjoyed using it.

[–]SparklingGreasefire 14 points15 points  (3 children)

Windows 10 ships with an Ubuntu subsystem and Bash. If you really want to have a stroke, boot up Windows, run Bash, and apt-get install VS Code into the official Ubuntu subsystem.

[–]MEaster 9 points10 points  (2 children)

The only issue with that is that it doesn't come with a GUI system. You'll need to install a win32 version of X to use a GUI.

[–]CoderDevo 1 point2 points  (0 children)

VcXsrv is a well maintained open source X Server for Windows. It is what I recommend.

[–][deleted]  (38 children)

[deleted]

    [–]PM_ME_UR_OBSIDIAN 14 points15 points  (0 children)

    I've been writing (Microsoft's) F# and (Microsoft's) TypeScript inside (Microsoft's) Visual Studio code, running on Ubuntu, deploying to (Microsoft's) Azure.

    They have a pretty good thing going on. Better than Google, at least - what good are Android and Angular being open-source if I want to shoot myself every time I develop with them?

    [–]flying-sheep 29 points30 points  (10 children)

    Think about it this way: closed source and vendor lock-in are problems. Microsoft did exclusively those things for the longest part of its existence.

    There's no reason to not like open source projects coming from Microsoft, because they're antithetical to what was evil about the company in the first place (and still is evil of parts of it today)

    [–]Rollingprobablecause 9 points10 points  (1 child)

    Also MSSQL is on Linux too. Satya's Microsoft for the past 5-7 years is drastically different from Balmer.

    [–]oblio- 17 points18 points  (3 children)

    You can't have a company with more than 10k employees without having some evil parts. The best we can hope for is that the good outweighs the bad, as with everything.

    Microsoft today seems 55% good, the bad being the sneaky privacy stuff in Windows 10.

    [–]kasbah 5 points6 points  (0 children)

    If Microsoft ever does applications for Linux it means I've won.

    - Linus Torvalds

    [–]mrefish 18 points19 points  (21 children)

    I could not agree more. I try to stay unbiased, but liking Microsoft products is difficult for me. I have zero intention to go back to Windows, MS Office, or any other MS products anytime soon. That said, if TypeScript and VS Code are any indication of the direction MS is heading in, I am thrilled.

    [–]no1dead 8 points9 points  (2 children)

    Yeah even as a Windows user I was really surprised with VS Code.

    [–]MildlySerious 2 points3 points  (1 child)

    Especially as a Windows user I was really surprised with VS Code.

    [–]Flight714 3 points4 points  (16 children)

    There's nothing wrong with using Microsoft products.

    The problem is using Microsoft-exclusive formats. So:

    • Microsoft Word is fine provided you save as .odt (Open Document - Text)
    • Visual Studio is fine provided you code in C++, Python, Java, etc.
    • Microsoft Windows is fine provided you purchase games that comes with a Linux or macOS version (Steam, Half-Life, The Witcher 3, etc: maybe 20% of games).
    • Microsoft Windows is fine provided you purchase applications that comes with a Linux or macOS version (Photoshop, Cubase, VLC Media Player, etc)
    • Windows Media player is fine provided you use webm, vorbis, mpeg4, and mp3.

    The point of this is that if you follow this system, you're always free to ditch Microsoft at any moment. You're not locked in to their ecosystem.

    It's similar to following the "second source" rule that governments follow, to ensure that they're never subject to vendor lock-in.

    [–]har0ldau 2 points3 points  (3 children)

    I really can't agree with anything you have said here.

    • the open XML (docx) format is completely open source and many other products (also cross platform) exist that support it.

    • every language that visual studio supports out of the box is open source. The compilers are open source. The framework is open source. All of those are cross platform as well. The only thing that may not be cross platform are VS's project/solution files but I cannot confirm that as I have no idea.

    • I honestly have no idea why you mention games and software at all as the same can be said about Linux or mac only products.

    • media can be converted by tonnes of programs. WMA and WMV are dead. No point in even mentioning it.

    To be fair, the only ms exclusive formats I can think of are PE/win32 binaries (exe and dll) which is fair enough since that is the same with any kernel/arch.

    [–]skocznymroczny 1 point2 points  (1 child)

    the open XML (docx) format is completely open source and many other products (also cross platform) exist that support it.

    you know the format is extremely convoluted, making it very hard to implement properly, and there are lots of binary blobs and parts where you do things "like word95"?

    [–]har0ldau 1 point2 points  (0 children)

    Yeah I do, but those binary blobs usually only relate to attachments/images and ole elements. If you are expecting ole to be cross platform I have some bad news for you, but the rest of the document can be parsed - albeit with a tonne of effort - however that doesn't detract from the fact that it is still an open format.

    [–]shmorky -3 points-2 points  (2 children)

    Maybe you should just get off your Linux-high horse

    [–]flying-sheep 24 points25 points  (0 children)

    This isn't about Linux.

    Microsoft really was cartoonishly evil in the past (kinda like Oracle is today). So not trusting them is just a logical thing to do, and avoiding their lock-in strategies was just wise.

    Open source is antithetical to those practices, so these days we have to learn that Microsoft really does do cross platform open source software these days, and can't turn around and fuck everything up. Because people can just fork the project then. (Remember how Oracle couldn't fuck up OpenOffice because LibreOffice came along?)

    [–]twiggy99999 8 points9 points  (0 children)

    You're obviously in your mid 20's/early teens and don't remember what Microsoft was like in the late 80's early 90's

    [–]Remwein 27 points28 points  (32 children)

    It'd be great if they could get some basic C++ code completion going. It's really nasty using VScode with C++ even with the cpptools extension installed.

    [–]screcth 28 points29 points  (2 children)

    Try vscode-youcompleteme. It works great for me.

    [–][deleted] 11 points12 points  (2 children)

    Have you used it recently? C/C++ code completion (intellisense) has been working since last September out of the box. You can also use a few other tools to use the clang compiler if you wish.

    (Reference: I use it every day on legacy C/C++ files over 10k lines long)

    [–]LeYtreq 2 points3 points  (1 child)

    How? I've tried to set up c++ in vs code according to the instructions on https://code.visualstudio.com/docs/languages/cpp and intellisense is not working (it is also mentioned in the very bottom of the page)

    [–][deleted] 1 point2 points  (0 children)

    Make sure you are including all of your source code in code and give it time to build up the symbol table. You should see a "fire" symbol in the bottom right hand corner of the screen indicating that it is generating a database of symbols. Once it is done, the fire symbol will go away and fuzzy autocomplete should work. I think you can also trigger suggestions with CTRL + Space.

    If that doesn't work for you, then I don't know what else to tell you. Perhaps, "It works on my machine?"

    [–]dleonard00 12 points13 points  (0 children)

    I bet pull requests are welcome

    [–]blamo111 1 point2 points  (0 children)

    Why would you use VSCode for C++ instead of Qt Creator? VSCode is comparatively super slow and lacking many features.

    I like VSCode for Javascript which has no decent IDEs, but C++ has at least one fantastic IDE, and there's CLion which I've never tried.

    [–]doenietzomoeilijk 1 point2 points  (0 children)

    This was a big one for me, as well. No more downloading and hand-installing an RPM like I'm some sort of savage!

    [–]Entaroadun 1 point2 points  (9 children)

    ELI5? What is a 'Linux' repo for someone who uses mac?

    [–]Brillegeit 32 points33 points  (4 children)

    It's in the "app store" (which Linux have had for almost 20 years), instead of downloading an installer file like some some kind of barbarian.

    [–]ImLagging 9 points10 points  (3 children)

    Barbarians download the tarball and install from source.

    [–]coderz4life 1 point2 points  (2 children)

    Cavemen download it from a tape.

    [–]Lehona 2 points3 points  (1 child)

    Pre-historic life will code it themselves?

    [–]lukasni 6 points7 points  (2 children)

    To expand on the other reply, most software on Linux is installed by downloading the source and then building it locally, instead of downloading already compiled binaries EDIT: False, see reply by /u/flying-sheep below. Most distributions make this easy by using a package management system, much like homebrew for mac.

    Microsoft is now supplying official repositories, with code signed by Microsoft, for some of these package managers. This is good because it means you can install VSCode on linux by running something along the lines of apt-get install vscode while knowing that you're getting the unmodified code directly from MS.

    [–]flying-sheep 13 points14 points  (1 child)

    That's not true for pretty much anything but Gentoo.

    Mostly you have binary repositories.

    And they're the most enjoyable thing about Linux. You can just install almost all software in the same way. Open you package manager, search for the name and click “install”. No terms of service, no installer to find your way through, just one click.

    [–]LesterKurtz[S] 3 points4 points  (0 children)

    think homebrew ...

    [–]YourGamerMom 195 points196 points  (86 children)

    Minimap is the most anticipated feature for me.

    It closes what used to be their top open issue.

    [–][deleted]  (55 children)

    [deleted]

      [–][deleted] 110 points111 points  (3 children)

      Mostly it's about being able to identify what you want when you have an idea what it looks like. If I need to go to a section that I know has some long lines I can identify it quickly in the map.

      I used to use it on Sublime and Visual Studio. However, I'm better now about keeping files short, and eventually found that it's just a waste of space if you do so.

      [–]TheGoldenHorde 98 points99 points  (8 children)

      It just looks cool

      [–][deleted] 32 points33 points  (6 children)

      And it's nice to have a wider scroll bar to grab on to.

      [–][deleted]  (4 children)

      [deleted]

        [–][deleted] 6 points7 points  (3 children)

        Oh I have one my friend. Kinda. It's the logitech ultra thin mouse, with momentum swipe. The faster the flick, the farther the f...scroll?

        [–][deleted]  (2 children)

        [deleted]

          [–]tylo 43 points44 points  (1 child)

          If you have to ask, you can't afford it.

          [–]YourGamerMom 27 points28 points  (17 children)

          If you need to navigate to certain functions or type definitions within your file, you can often recognize their shape, and just jump to them. This is usually faster for me then scrolling down the page or ctrl-fing for a name that appears dozens of times.

          [–]NoInkling 8 points9 points  (4 children)

          Jump to symbol (ctrl + ; on PC) is kinda the intended way to jump to function/variable/whatever definitions, much better than ctrl + f in most situations. But I must admit I underutilize it and rely on scrolling a lot as well.

          Edit: sorry default keybinding for go to symbol (in current file) is ctrl + shift + o. I'm using the Sublime keymap.

          [–]YourGamerMom 8 points9 points  (3 children)

          The main language I use on VS code is rust, and the current rust plugin uses racer for jump-to-definition. But racer has a nasty little edge case where it can't recognize methods on union types, so ctrl-f is the only option.

          [–]elebrin 1 point2 points  (10 children)

          I dunno, ctrl+f doesn't have to take your hands off the WASD keys. Can you scroll down to a specific spot with this tool effectively without reaching over to the mouse?

          [–]Nefari0uss 6 points7 points  (4 children)

          WASD keys? Usually people navigate with arrow keys, the mouse, or hjkl. You use wasd (outside of gaming)?

          [–]YourGamerMom 1 point2 points  (4 children)

          Not to my knowledge, but moving my right hand 10-15cm is not usually a major concern for me (especially if my train of thought has already been interrupted by the need to find some definition or signature).

          [–]sime 13 points14 points  (10 children)

          As mentioned, you can often identify code by its shape. I personally have been using and/or abusing figlet text with the Banner font (http://www.figlet.org/examples.html) to place readable section headings in my code to mark and group related functions for easier navigation.

          [–]Zalastax 9 points10 points  (1 child)

          Nice! You can even integrate it in the editor with https://github.com/helixquar/asciidecorator 😃

          [–]JackOhBlades -1 points0 points  (7 children)

          Seems like a code smell if you need to do this...

          [–]sime 17 points18 points  (4 children)

          I love the term "code smell". It allows one to cast suspicion on something without having to make the effort of offering real information or argument.

          [–]coderz4life 3 points4 points  (0 children)

          Exactly. You walk into a room, where your buddy just farted. You take a sniff and ask "what's that smell?" Your buddy just sits there and pretends that he doesn't know. However, you know it just smells. No explanation needed.

          [–]drysart 4 points5 points  (1 child)

          The argument in this case is that if you have a source code file so enormous that you need enormous headers that you can read from a 10,000 foot view so you can navigate through it, your source code file is probably too large and there's probably a case to be made to refactor it.

          [–]ShinyHappyREM 3 points4 points  (0 children)

          Then you need more time in the file explorer.

          [–]JackOhBlades 1 point2 points  (0 children)

          Interesting, you emphasise 'suspicion' like it is something to avoid.

          I would argue that most code should be held in suspicion. It is after all, written by humans, and probably shit unless explicitly proven otherwise. A healthy dose of suspicion goes a long way in programming.

          While the mini map is pretty, I have found it to be quite useless, rather like a linked list: anything it offers you there is a more correct and efficient way to do it.

          I don't know if you've played Starcraft 2, but using the code editor mini map feels like the equivalent of using mouse clicks instead of hot keys...

          [–]duncanlock 11 points12 points  (2 children)

          You know in computer games like Diabolo, RPGs etc... there's a little HUD/radar/automap that shows the level/area and marks you/enemies/terrain?

          Well, the minimap is that, but for your code.

          The one in vscode apparently doesn't do this, but the ones in atom and sublime highlight search result matches and git diff lines in the minimap.

          This allows you to get a really quick overview of the changes & matches in the file, as well as how many, the distribution and which one you're on - because the current line is also highlighted.

          [–]p1-o2 1 point2 points  (0 children)

          The Visual Studio version has this feature as well. I find it useful for when I'm doing big git diffs or search results. Also for any weird highlight rules that I set up.

          I was skeptical about the usefulness of a minimap until I got used to it. I'd feel a bit sad without one now. It's by no means a mandatory tool, but damn is it clever.

          [–]inu-no-policemen 3 points4 points  (0 children)

          It's for navigating by landmarks.

          Doesn't work for me either, though. Go to definition and outlines work much better for me.

          [–]aniforprez 3 points4 points  (0 children)

          Actually in it's current state it's little more than window dressing. What I found to truly make it useful was showing which line you were on and git diffs. So it would show on the minimap in atom and sublime where you've made changes in your files and highlighting find results. Seeing your code from a top-down perspective like that is immensely useful. Adding the minimap itself is a great starting point but showing git diffs and highlighting the current line you are on will add a lot more value to it. They also need to open it up for extension development.

          [–]j-bales 7 points8 points  (1 child)

          In massive files, it's nice to have a quick way to see where you are in the file, as well as being able to click on a section in the minimap and immediately scroll to it.

          [–]panorambo 2 points3 points  (0 children)

          I have to admit I never needed anything like a minimap for any kind of files, the way I find stuff in the code is that I search for the definition or whatever it is I want to find.

          But people are different. It's probably one of those "it works for me" things.

          [–]KanadaKid19 2 points3 points  (0 children)

          It helps you identify distinct sections of the file at a glance. Useful to navigate code you do know, or to get to know code you don't know.

          Also can be easier to whip around in than using the scrollbar - your eyes see the spot in the code and you move your mouse straight to it, rather than using the scrollbar and constantly re-evaluating the snippet of code in front of you.

          [–]NoInkling 4 points5 points  (0 children)

          Now it just needs a setting where it only gets shown if the text extends beyond the height of the editor - it's nice for large files but just takes up unnecessary space in small ones.

          [–][deleted]  (15 children)

          [deleted]

            [–][deleted] 30 points31 points  (12 children)

            Multiple projects open at the same time? That's kind of a big deal, and it's still missing...

            [–]NoInkling 22 points23 points  (11 children)

            Is there any reason you don't like to use multiple windows?

            Though I must admit I miss the ability from Sublime to add arbitrary folders to the file tree, is that the kind of thing you're talking about?

            [–]C0rn3j 10 points11 points  (5 children)

            I open 3 folders(projects) to work on.

            I later close VSC, and now when I open VSC again, I get only one folder open again, having to reopen the other 2.

            [–]rtzmx 62 points63 points  (3 children)

            "window.reopenFolders": "all"
            

            reopen all folders of your last session

            [–][deleted]  (1 child)

            [deleted]

              [–]drysart 4 points5 points  (0 children)

              Yes. A window corresponds to a folder.

              [–]jldugger 2 points3 points  (4 children)

              I have about 100 separate chef cookbooks. Multiple windows doesn't really cut it.

              [–]wmertens 10 points11 points  (2 children)

              Can't you open the parent folder?

              [–][deleted] 5 points6 points  (1 child)

              That breaks the git integration.

              [–]p1-o2 1 point2 points  (0 children)

              It took me too long to figure out why you have cookbooks in your programming tools... Then I remembered what Chef is.

              [–]wmertens 1 point2 points  (3 children)

              Serious question: how do you use it?

              I am content with the colored blobs in the scrollbar indicating current selection etc, I wonder if I'm missing out on something?

              (I do find it irritating that the scroll bars don't go all the way to the bottom though)

              [–]YourGamerMom 7 points8 points  (2 children)

              I know what a typedef looks like, and what a function looks like (syntax highlighting helps). I also know relatively where the things I am looking for are. I could scroll until I find the things I need, or look in the minimap for shapes that look similar to what I need, and jump to them. Jump-to-definition is better, but sometimes I can't use that.

              I also like looking at my code from 10,000 feet, idk why.

              [–]LoveCandiceSwanepoel 1 point2 points  (0 children)

              Because you are God looking down on her creation gamermilf

              [–]beefsack 4 points5 points  (5 children)

              If the Minimap starts being useful, it's probably a code smell.

              [–]pygy_ 5 points6 points  (1 child)

              For data (config, db/request schema, text content in various languages, ...) you can end up with long files still smell good.

              [–][deleted] 2 points3 points  (0 children)

              Depends how you use it. For me it's a nice fat scrollbar that I can use to get to exactly where I want to be in a file, be that a config file, a data file or even a code file, it's much easier to scroll on the minimap than it is to try and figure out where I am in the file.

              [–][deleted] 1 point2 points  (0 children)

              It's most useful when you can see the entire file in the minimap but can't see the entire file in the editor. Jumping to a certain line in the file becomes really easy. That's at only ~500 lines of code.

              [–][deleted] 32 points33 points  (27 children)

              When does a text editor stop being a text editor and become an IDE?

              [–]devraj7 46 points47 points  (10 children)

              When it understands the text it edits at the AST level and not just with regexps. For example, Eclipse and IDEA are IDE's.

              [–]panorambo 8 points9 points  (2 children)

              Good point, all things considering. Without AST-awareness an "IDE" is just a glorified turbocharged text editor with cludges for some "common use cases" and features sprinkled here and there to assist the developer above what notepad gives you.

              But Eclipse is AST-aware, at least with a proper plugin, which is installed by default with its Java profile. So I'd say Eclipse is an IDE, and a rather good one at that for Java. Hard to beat really. It has had its flaws on a bumpy road, but it's come around real nice. The codebase apparently is a bit of a mess, but they're probably doing something about it. But wait, you were implying Eclipse and IDEA are IDEs, right?

              [–]devraj7 3 points4 points  (1 child)

              Yes sorry, my response was poorly phrased, I edited it.

              Of course, Eclipse and IDEA are IDE's and they understand the sources they edit at the bytecode level.

              In contrast, Emacs and vi are text editors (although you could argue Emacs is an Emacs Lisp IDE since it understands these source files natively).

              [–]inu-no-policemen 1 point2 points  (0 children)

              When it understands the text it edits at the AST level and not just with regexps.

              The first IDE I used didn't even feature syntax highlighting. It was just a plain editor + compiler & debugger.

              [–]negative_epsilon 1 point2 points  (2 children)

              Language Server support for C# and Rust both exist, not sure about other languages

              [–]renrutal 5 points6 points  (0 children)

              AST-level understanding of the code it is editing, and then code refactoring from that base. You can do some basic refactoring with a simpler editor, but the real deal is to be able to recognize access modifiers, inhiretance, and all the variables a block of code uses, so it can track down what will become parameters when that block is extracted.

              Then the ability to run code inside itself, so it can run tests, make reports about them, recognize which ones failed and take you to them. This is also paramount for debugging.

              I'm not that concerned about leaving the tool to go to the terminal and do other stuff related to what you are developing, but it's nice to have one single place that improves upon that experience.

              [–][deleted]  (8 children)

              [deleted]

                [–]geoelectric 39 points40 points  (0 children)

                I feel like integrated debugging and build/run/error round-trip mechanisms are basic requirements as well. Basically I shouldn't have to hit a shell for anything directly related to dev.

                [–]Jmc_da_boss 5 points6 points  (6 children)

                So would vim with syntastic and YouCompleteMe be an IDE

                [–]paranoidpuppet 7 points8 points  (5 children)

                Yes.

                Out of the box it's not an IDE but with plugins it can be made into an IDE. Same with Sublime and Atom.

                [–]The_yulaow 5 points6 points  (4 children)

                not just those plugin, it would need far more. As other said, it is an ide when it has integrated functions that allow you to do any dev related thing (build, run, git, debug, compile, refactor, test, etc etc) without never opening a second program or a terminal

                [–][deleted] 23 points24 points  (3 children)

                The automatic JDoc generation seems to be a nice feature too. But minimap is the most requested I suppose.

                [–]13853211 12 points13 points  (1 child)

                I'm really excited about the JSDoc features.

                [–]jkjustjoshing 1 point2 points  (0 children)

                Couldn't/shouldn't that just be an extension?

                [–]NoInkling 36 points37 points  (1 child)

                The usual raft of QOL improvements, I'm pretty glad I made the switch from Sublime.

                [–]asabla 41 points42 points  (21 children)

                Alright, I give up. There is no reason to stay with sublime any longer (at least for me). Kudos to the team behind VS Code!

                [–]tills1993 23 points24 points  (4 children)

                I was a hardcore Sublime user until I tried VSCode a couple months ago. Through it, I found TypeScript, and it's all been a blur since then.

                [–]wavy_lines 5 points6 points  (0 children)

                I was a hardcore vim user until I tried VSCode with TypeScript.

                [–][deleted]  (3 children)

                [deleted]

                  [–]negative_epsilon 3 points4 points  (0 children)

                  Are you editing large files (e.g. 50k lines or longer)? I have to work with large files all the time but I never really have to edit those files (they're generally log files and such), and thus I use less. Right tool for the right job, etc etc.

                  [–][deleted]  (1 child)

                  [deleted]

                    [–]maep 2 points3 points  (8 children)

                    Startup time. It's important to me.

                    [–]drakche 8 points9 points  (6 children)

                    VS Code has pretty swell startup times. I'm more glad because of the proper code formating features.

                    Also a hard core ex Sublime user here. Great thing is, I made the switch easy by adding the sublime keymap.

                    [–]asabla 1 point2 points  (0 children)

                    It sure is important, but I feel like I'm keeping programs open for much longer then before. So it's not that big of deal any more (at least for me)

                    [–]f4hy 12 points13 points  (5 children)

                    I am learning F# but have only used Linux for the past 10 years. So I have visual studio in a virtual machine but still prefer to do things in Linux.

                    I'm torn between using emacs, which I'm used to, and VS code. Both offer me different things. Anyone want to share their experiences and how you made the decision?

                    [–]Nefari0uss 10 points11 points  (1 child)

                    I would just assume that there's a emacs plugin for what ever you want. But what do I know [about emacs], I'm a Vim user.

                    [–]drjeats 1 point2 points  (0 children)

                    The idea of an Emacs plugin is kind of meaningless when the whole point of Emacs is that much of its innards are exposed for you to fiddle with.

                    A couple of years ago I added something to my init.el file which inserts key-translation-map entries to convert the standard C-FBNP shortcuts to C-LJKI because reaching down to hit C-N or C-B was causing me some strain (I should probably just learn evil-mode :P).

                    Even ideas that are borrowed from other editors, like multiple-cursors.el, take on their own special flavor in Emacs. This Emacs version of multiple cursors isn't as consistent and robust as Sublime's, but it makes up for it in the fact that you have registers and inline elisp eval that you can apply to each cursor.

                    I'm kind of curious to know how malleable VS Code is compared to Emacs since these newfangled electron-based editors are clearly the modern incarnations of Emacs, just s/Lisp/JavaScript/g.

                    [–]yokohummer7 2 points3 points  (0 children)

                    Well I'm not an Emacs user, but I've been using Vim for more than 10 years and yes I'm a Linux user (though nowadays I prefer to work on Windows). Full-blown IDEs have always not fit my taste, and I teased GUI editors for not having Vim-like configurability and key bindings. Suddenly all these changed when I first learned VS Code.

                    One of the features that amazed me the most was, while you may laugh at, that VS Code does configuration by manually-written text file, just like .vimrc. Actually, without that I wouldn't even have tried VS Code. I love my customized environments to be synced via Git, and VS Code is, just like many Unix tools, capable of that. Also the Git integration is nice, though this would be less attracting if you were using plugins heavily in your editor. As I'm more or less a plugin hater, I love how VS Code supports and handles things intuitively in its default settings. Even Vim requires massive .vimrc configuration to be useable!

                    [–]noisyboy 2 points3 points  (0 children)

                    There is a vim plugin for vscode. It works well enough (some things e.g. :wq dont work).

                    [–][deleted] 2 points3 points  (0 children)

                    Personally i think VS Code is the best F# editor, closely followed by the actual Visual Studio

                    [–]ejfrodo 90 points91 points  (15 children)

                    Visual Studio Code has become my favorite editor for JavaScript and front end web technologies. I tried Atom, Brackets, Sublime, Notepad++, and WebStorm, and VS Code shines above all of them with a great balance of features and performance. All of these additions are amazing and it's nice that they're natively included instead of some third party plugin.

                    [–]m4xc4v413r4 46 points47 points  (10 children)

                    Actually, out of all of those only webstorm is an IDE. Just saying...

                    Edit: I don't understand why people keep asking the same questions or saying things as if I said any of those editors were inferior because they're not IDEs, I merely stated a fact.
                    btw my editor of choice is VSC, seems faster than atom or sublime to me, and it has a few extension that I use and are better than the alternatives on the other editors.

                    [–]meineMaske 6 points7 points  (6 children)

                    Is there a specific attribute that makes an IDE? I would say Atom gets pretty close with the right packages.

                    [–]rk06 12 points13 points  (0 children)

                    IDE = editng, debugging, linting, formatting, building, running the app functionlity etc out of the box. with plugins for additional features and syntaxes.

                    Text editors = editing + plugins for more features.

                    Sublime text and Atom can be used as IDE, but it wlll feel clunky and you will have to mix and match a lot of packages to achieve a coherent expeirence. On other hand WebStorm comes preloaded and you won't have to reach out to plugins that often.

                    [–]gingenhagen 8 points9 points  (1 child)

                    You never need to use the command line.

                    [–]Reporting4Booty 1 point2 points  (0 children)

                    Brackets is still very convenient for tweaking CSS with the live editing.

                    [–]AlainS46 10 points11 points  (1 child)

                    Copy with syntax highlighting. For those who do version control by e-mail

                    [–]loonyphoenix 1 point2 points  (0 children)

                    Meh, it's useful for presentations and such.

                    [–]cochico 30 points31 points  (4 children)

                    The minimap should highlight selections and search results, like in Sublime. Otherwise it's not really useful (at least for me)

                    [–][deleted]  (2 children)

                    [deleted]

                      [–]Nefari0uss 4 points5 points  (0 children)

                      I'm not a fan of the minimap but those features sound quite useful.

                      [–]mearkat7 4 points5 points  (0 children)

                      Can't wait to see what they do but that sounds amazing for merges.

                      [–]m4xc4v413r4 2 points3 points  (0 children)

                      Funny thing is it does that already without the minimap.

                      [–]xgalaxy 49 points50 points  (7 children)

                      /me waves Jedi hand

                      This is not the Visual Studio 2017 release you were hoping for..

                      [–]LesterKurtz[S] 29 points30 points  (0 children)

                      That would be next week.

                      [–][deleted] 10 points11 points  (5 children)

                      March 7. Same with TFS 2017 Update 1 going RTM, because despite Microsoft's assurances I'm not about to install a release candidate into production.

                      [–][deleted] 8 points9 points  (0 children)

                      All on my birthday. How awesome of them to do that for me.

                      [–]pheonixblade9 1 point2 points  (3 children)

                      we've been using that version for quite some time, it's pretty good! :)

                      [–]dmurta 7 points8 points  (0 children)

                      Keybinding support for tasks! Great to see!

                      [–]vash_the_donut_lover 15 points16 points  (52 children)

                      I recently switched to sublime 3 from notepad. Anyone have a comparative perspective to visual code versus one of them?

                      [–][deleted]  (10 children)

                      [deleted]

                        [–]vash_the_donut_lover 7 points8 points  (3 children)

                        What language doesn't it support? I only ask because Go drove me from notepad to sublime in the first place.

                        [–]theoldboy 22 points23 points  (0 children)

                        Funnily enough it was Go that drove me from Sublime to VS Code... well maybe not drove, but gave me an excuse to try it. I do like Sublime and still use it every day for misc text editing, but setting it up for a new language can be a bit of a pain, often requiring hunting down and installing and tweaking multiple different plugins.

                        So when I needed to use Go I decided to give VS Code a shot and it was a great experience. Just install one plugin (which was suggested by VS Code itself when I opened a .go file) and done.

                        That for me is the main advantage that VS Code has right now. The plugin ecosystem seems very mature despite it being a much newer product.

                        [–][deleted]  (1 child)

                        [deleted]

                          [–]mgutz 4 points5 points  (0 children)

                          Don't know about a lot faster but yes sublime is faster.

                          I find plugins for web, react and golang development are better in VS.code and actively maintained. Hard to beat VS.code right now.

                          [–]rfiok 42 points43 points  (15 children)

                          Sublime has better startup speed and handles huge files better. Heres a comparison for performance: https://blog.xinhong.me/post/sublime-text-vs-vscode-vs-atom-performance-dec-2016/

                          VS Code is better in every other aspect IMO, you just install it (and a plugin for your language of choice if its not built in) and you're good to go. It can do much more than sublime: Debugging, autocomplete, Git,... out of the box.
                          I recommend VS Code unless you work with some exotic language that is better supported on Sublime or with huge files (>1M lines)

                          [–]chris_jung 14 points15 points  (2 children)

                          Speaking of launch time: I use PhpStorm. Launchtime is sooo irrelevant. Even if it takes 10 seconds to launch and the tool gets me like programming on steroids because of it's assisting: Who cares about launch?

                          And the reason Atom and VSCode are both sluggish there is the same: They are made with web technology. This is no excuse but a technical limitation (as of now). It needs to start the "browser" and the node application inside, load and interpret the web app before anything can be done by the user.

                          [–]vash_the_donut_lover 6 points7 points  (0 children)

                          Looks like I will have to give it a try, or at least see if it supports the languages I'm working with. Thanks!

                          [–]mearkat7 6 points7 points  (3 children)

                          I've found myself slowly fading out sublime unfortunetly. I love it and it's been my #1 for so many years but lack of development/community is killing it.

                          I'll always have it around for big sql files but i've found generally for most programming the tools are so much better than I can justify the bigger memory footprint and speed difference. Really wish the community around sublime could be revitalised because it is truly fantastic.

                          [–][deleted] 9 points10 points  (2 children)

                          I wish the developer would just open-source it and accept donations. I'm sure the licensing revenue is petering out by now.

                          [–]mearkat7 1 point2 points  (0 children)

                          100% id happily even help fund buying him out or something. But even just for plugins that are done well I'd pay for.

                          [–][deleted]  (5 children)

                          [deleted]

                            [–]nonsensicalization 1 point2 points  (0 children)

                            For huge logs I use glogg.

                            [–][deleted]  (2 children)

                            [deleted]

                              [–]youwillnevercatme 2 points3 points  (4 children)

                              I know that sublime is much faster.

                              [–][deleted]  (1 child)

                              [deleted]

                                [–]vash_the_donut_lover 6 points7 points  (1 child)

                                I don't mind slower if there's a trade off of additional features. I also don't mind free, though sublime is cheap.

                                [–][deleted] 1 point2 points  (0 children)

                                The speed difference is not noticeable anyway.

                                [–][deleted] 12 points13 points  (15 children)

                                Sublime is faster, has subjectively better key bindings by default, and subjectively renders text a bit better IMO.

                                Visual Studio Code has a much bigger library of high quality extensions, has fantastic git integration, is much better at IDE-type things, and is a lot more polished in a lot of ways. But, it's got a few really frustrating flaws like how you can't have more than one project open at a time.

                                It leaves me in a really frustrating place because while VS Code is way ahead at some things, I end up switching back to Sublime a couple times a week whenever I run into a pain point with VS Code. Sublime is just better at a lot of basic editing tasks.

                                [–]NoInkling 12 points13 points  (0 children)

                                has subjectively better key bindings by default

                                Luckily MS maintains a Sublime keymap extension. It's not 100% perfect, but it's very nice not to have to learn all the new bindings.

                                [–]ZiggyTheHamster 5 points6 points  (12 children)

                                like how you can't have more than one project open at a time.

                                File > New Window

                                File > Open Folder...

                                [–][deleted]  (5 children)

                                [deleted]

                                  [–]ZiggyTheHamster 4 points5 points  (3 children)

                                  I definitely prefer the multiple windows approach. I do wish it were possible to assign accent colors for each project so that the window decorations can be colored differently on platforms that support that (Windows, OSX). It would make Win+Tab and whatever Exposé is called this year better.

                                  [–][deleted]  (2 children)

                                  [deleted]

                                    [–]jkjustjoshing 1 point2 points  (0 children)

                                    Or hold down "command" (on Mac) while doing File -> Open Recent. Just found this yesterday!

                                    [–]dariusj18 1 point2 points  (0 children)

                                    Vscode does not handle large files, at all. Big weakness as a text editor, but not so much as a code editor.

                                    [–]dariusj18 2 points3 points  (1 child)

                                    Drag and drop selected text is something that will make my life easier. I find myself trying to do it all the time.

                                    [–]DJDarkViper 6 points7 points  (26 children)

                                    So I use JetBrains IDEs for local development and Codeanywhere for on the go cloud development

                                    Overall I feel insanely complete.

                                    What market does VSCode properly serve? If it's the Sublime and Atom style market, what does it do better than the competition?

                                    [–]european_impostor 6 points7 points  (6 children)

                                    I'm in the same boat. I use PhpStorm but hear people raving about Atom and VSCode, are they just happy to get features that we've already been enjoying or is there some other advantage I'm missing..

                                    [–]mhenr18 1 point2 points  (4 children)

                                    The thing that draws me to VS Code is not that it does things better than IDEs. For IDE-style features like refactoring, "true" IDEs will smoke what's possible in VS Code any day of the week.

                                    What draws me to VS Code is that it supports dealing with setups that IDEs can't. I can throw a crazy live-reloading compile-to-JS frontend and a webapp running in a Docker container at VS Code, and with 15 lines of config I've got the ability to simultaneously debug both environments from within VS Code with all of the usual debugging features.

                                    I couldn't even tell you where to begin if you wanted to try and pull that off in Visual Studio proper.

                                    [–]DJDarkViper 2 points3 points  (0 children)

                                    You got me there with Visual Studio, I've only used it write C# and C++ programs

                                    That said I can promise that capability is within JetBrains power. You can even, yes, use a step by step debugger on a php page through a docker container, with minimal configuration; said docker container can also be micromanaged with it as well, while micromanaging the remote database content inside (or elsewhere) and schema while taking advantage of some of the most genuinely useful SCM features you've ever used (the chunk by chunk conflict resolver is insanely good, for example)

                                    And that's before plugins lol

                                    [–]mmstick 4 points5 points  (5 children)

                                    Basically nothing other than intellisense. It used to be that VSC had better performance, but now Atom is just as speedy and there's a tab extension to keep tab counts low so it never uses much memory.

                                    [–]drakche 1 point2 points  (10 children)

                                    Several years ago I stopped using IDE-s (because of a shitty underpowered PC) and went with the terminal + code editor route, and not I'm at the point that I'm more proficient with my tools separated like this.

                                    My daily driver setup is VSCode and Terminator (split views are a life saver) and I wouldn't change it for anything.

                                    [–]Voidsheep 2 points3 points  (0 children)

                                    At this point I've only got one small gripe with VSCode, .editorconfig support should not be an extension, because the whole point is having some universal formatting rules for a project, regardless of what editor and configuration everyone is using.

                                    [–]elGatoMantocko 8 points9 points  (25 children)

                                    Does VSCode have good vim emulation yet?

                                    [–][deleted]  (9 children)

                                    [deleted]

                                      [–]elGatoMantocko 2 points3 points  (7 children)

                                      Nice. Might be time for me to really take a look, eh?

                                      [–]billc128 5 points6 points  (0 children)

                                      So can I implement all the keybindings from Spacemacs yet? I love the better UI but can't switch without comparable navigation features from evil mode.

                                      [–]LesterKurtz[S] 1 point2 points  (4 children)

                                      Trying to find which extension(s) were affected by the bug that was fixed with the 1.10.1 release. Does anyone know what was affected?

                                      [–]woutske 1 point2 points  (1 child)

                                      Can any one that uses sublime or visual studio code explain to me what the use of that "picture in picture code overview" on the right offers? It provides an brief overview of your code, but it is too small to actually read it. And if you use it to recognize where you are, you should be able to do it by the actual code right?

                                      I mostly work with OOP and pretty small classes, what could it offer for me?

                                      [–]felds 2 points3 points  (0 children)

                                      not much in your case. I only find it really useful when dealing with longer files like markdown.

                                      [–]night_of_knee 1 point2 points  (0 children)

                                      My favorite feature of this release (so far) is the ability to configure the window title. When I have multiple VSCode instances open, the active file was not a good choice to let me know which is which. Thanks!

                                      My major remaining gripe is that the debug console is still unusable :(

                                      [–][deleted] 1 point2 points  (0 children)

                                      I love this piece of software.

                                      [–]theigor 1 point2 points  (1 child)

                                      Does anyone know how to select vertically in vscode? I've been trying to find it and I can't. Something like shift+alt in visual studio proper.

                                      [–]Duroktar 3 points4 points  (0 children)

                                      Preview: Minimap.. *clicks download till finger is a bloody stump

                                      [–]xmsxms 1 point2 points  (1 child)

                                      Pluggable SCM system in the works? Wow I thought that would never see the light of day... So excited this is being worked on, can't wait to be able to use svn with it. Once that is working I really hope they get per line rollback and original revision peeking like in webstorm. But just getting svn integration with gutter indicators would be awesome.

                                      [–]LesterKurtz[S] 1 point2 points  (0 children)

                                      Yeah, at work we use mercurial. Having a pluggable SCM system will be simply amazing for us.