Python in Visual Studio Code
blogs.msdn.microsoft.com
blogs.msdn.microsoft.com
I have a tonne of tooling around automated python environments, vim plugins (now vscode plugins), tasks - and it's made the whole thing significantly more 'unixy' than it was before. And to think - MSFT!
I have git hooks for my homedir's dotfiles that automatically look to see if the plugin cache needs an update one way or the other - and runs my aliases (see below).
I have global tasks that now link into workspaces, pretty decent python, golang, and c++ support. I've mapped keys to the 'wierd' collection of things I do between terminator terminals, vim tabs, and whatnot... honestly, it's pretty good. It's not great, the things in 'vim' support are really 'vi'-light. I'd be much happier if vim support meant understanding my .vim hierarchy - but I'm happy.
# vscode bash bits alias vspluginsave="code --list-extensions | xargs -L 1 echo code --install-extension > .vscode.plugins" alias vspluginload="sh ~/.vscode.plugins" alias vspluginclean="rm -rf ~/.vscode/extensions"
I've never found a real use for them, so I want to know what other people use them for.
But the idea is that I can than wrap django's manage.py to collect just the commands we write, do something similar for make targets, and selected other things - so that I can just continue working and check on the task later.
In my mind, almost anything other than linting, debugging, profiling, and deploying shouldn't need to interrupt my flow.
You can also have it use neovim as the backend as well: https://marketplace.visualstudio.com/items?itemName=vscodevi...
https://github.com/noahfrederick/vim-skeleton vim-skeleton
https://github.com/majutsushi/tagbar tagbar
https://github.com/tmhedberg/SimpylFold SimpylFold
https://github.com/nvie/vim-flake8 vim-flake8
https://github.com/kien/ctrlp.vim.git ctrlp.vim
https://github.com/hashivim/vim-terraform.git vim-terraform
https://github.com/hashivim/vim-packer.git vim-packer
https://github.com/hashivim/vim-vagrant.git vim-vagrant
git://github.com/rodjek/vim-puppet.git vim-puppet
https://github.com/fatih/vim-go.git vim-go
git://github.com/chase/vim-ansible-yaml.git
https://github.com/vim-airline/vim-airline vim-airline
https://github.com/vim-airline/vim-airline-themes vim-airline-themes
git://github.com/ekalinin/Dockerfile.vim.git Dockerfile.vim
code --install-extension batisteo.vscode-django
code --install-extension bibhasdn.django-html
code --install-extension Compulim.compulim-vscode-closetag
code --install-extension donjayamanne.jupyter
code --install-extension donjayamanne.python-extension-pack
code --install-extension DotJoshJohnson.xml
code --install-extension ecmel.vscode-html-css
code --install-extension formulahendry.code-runner
code --install-extension formulahendry.terminal
code --install-extension ginfuru.ginfuru-better-solarized-dark-theme
code --install-extension Gruntfuggly.global-config
code --install-extension haaaad.ansible
code --install-extension himanoa.Python-autopep8
code --install-extension HookyQR.beautify
code --install-extension humao.rest-client
code --install-extension magicstack.MagicPython
code --install-extension mauve.terraform
code --install-extension ms-python.python
code --install-extension PeterJausovec.vscode-docker
code --install-extension tushortz.python-extended-snippets
code --install-extension VisualStudioExptTeam.vscodeintellicode
code --install-extension vscodevim.vim
code --install-extension vscoss.vscode-ansible
code --install-extension wholroyd.jinja
code --install-extension Zignd.html-css-class-completion
My question: to you have go to definition/tags setup in va code w/vim - and if so, how have bound the keys to get there?
[ed: looks like a sibling comment answered this in part already]
Tpope has a magnificent tools that allow jumping into gems - and I'm curious if you have something similar for python - allowing you to jump from your code, to pip/egg/package code, to python stdlib code.. And maybe all the way to c source for extensions?
See: https://github.com/tpope/gem-ctags And much more
There's one thing I wish I could figure out (I haven't really put that much work into it, so I'm sure there's a fix): is there a way to bind "<<" to "move text left without losing the current selection"?
I currently use intellij for java work (because my employer pays for the license) but for most any other type of editing I use emacs. I'd be interested to see what other emacs users think of vscode.
I am expecting to slowly move out of emacs for my coding in the next few months.
Emacs will be kept because I have a lot of org-mode files to manage my company at a higher level (lot of tables with formulas to calculate several key indicators). On the longer term, they could be moved as Python notebooks with the rendering in VS Code.
So yes, I do think this is the editor which is going to move a lot of old coders out of emacs/vi/vim.
PS: The added bonus is that I easily get support of Go, Typescript, etc. without the need to "debug my editor". Just install the right extension, done.
I can't even tell you how hard that was with VIM.
That certainly seems a possibility, though I expect it may be somewhat dependent upon the language used, and whether the community around that language invests enough effort to develop vscode plugins for that language.
As an editor, VSCode is still inferior (but improving at lightspeed). As an out-of-the-box experience, it blows almost everything else out of the water. Against my customized Spacemacs, it's still struggling.
But that renderer is gorgeous!
But I started to use it more because the autocompletion is nice. It's not perfect, but out-of-the-box experience is nicer.
After a few months though working in it, I want to go back to Emacs, and as such, Emacs is usually running. Magit for example, or being able to split your screen up as needed, or quickly jumping between files, etc. is something that is burnt into my brain. VScode is terrible at these things.
I am watching the lsp-mode and lsp-ui projects. They seem promising because it answers a concern I have : I need to float between projects in different languages and want the typical set of IDE-like features in each one. It would be nice to have a single set of keybindings regardless of language, which vscode excels at now. VScode has a good debugging story out-of-the-box lsp-ui is promising because it is implementing vscode-like features (like peek mode).
One reason is that I kind of like the separation between Emacs for org-mode and another tool for development.
Another is that VSCode just kind of 'clicks' with my approach. As a freelancer, I often work on multiple projects at the same time. I can have various VSCode projects open, each with its own terminal processes.
I find myself still using Emacs for TRAMP stuff (remote SFTP editing of files) occasionally, but somehow using Emacs for properly working on projects never quite 'clicked' the way VSCode did. It's possible that I just haven't gotten comfortable enough with it yet, but so far I'm really loving the Emacs/VSCode setup. And I still occasionally use Sublime Text for one-off editing of bigger files.
Switch from vim to emacs is obvious. Switch from emacs to sublime was triggered by moving from Linux to MacOS (my Thinkpad was failing after diving in a tropical rain so I bought a brand new MacBook).
I've also JetBeans'd (2001-2003) with varying success, and have been trying PyCharm on and off since 2014, just due to the promise. They're not there - or at least not enough.
JetBeans constant need to move my profiles around (literally they change per version) has made my strategy of having revision control sync things throughout a nightmare. Also, due to some files being binary - I just couldn't.
VSCode - and especially now that I have the global tasks plugin has simply blown my mind. Every (python django) repository I have has a wrapper script, as part of my tooling - I simply have vscode call that. Now, I have several commands I used to jump to a terminal for, run within code, in a collapsed terminal. It's great. My #1 use for that is a profiler and runserver. In dev, I always, always want them running.
It's much the same for other languages - and my environment.
Wow. Everything actually "just worked". Python had perfect syntax highlighting out of the box. It noticed that I had pylint installed and started using it. It was trivially easy to set up per-workspace virtualenvs. Its git plugin certainly isn't the awesomeness that is Emacs's magit, but it's totally sufficient for normal day-to-day workflows.
It's now been a couple of months since I fired up Emacs at all, and now most of my coworkers have also switched to VSCode (yay for making it easy to share settings among coworkers within a project!). I am far, far from an MS fanboy, but they hit this one out of the park. Well done, team.
One thing I forsee being a problem is that one of my projects is a side project, that I usually work on from the couch at home, using my chromebook sshed into a box running vim. So, I can't run vscode in that environment. No biggie though, I can drop to vim for that.
[0] https://marketplace.visualstudio.com/items?itemName=Kelvin.v...
Most vim users chose it because they're borderline anti-IDEs, it's really strange to me that you chose to switch for features that a vim+tmux workflow already offers.
Compare that to any other IDE or even any other open source projects.
Maybe I just care a little too much about code folding, but after origami.el in emacs and atom and vim's great selection of folding commands, it seems like an oversight.
VS Code has also painted itself into a corner making proper vim emulation impossible: https://github.com/Microsoft/vscode/issues/22276#issuecommen...
The editor is awesome, and I'm really thankful for Microsoft's work in this space, especially on the LSP. But it's not everything for everyone.
Your links are to feature requests, not bugs.
Since ggregoire‘s comment is about bugs, your experience is orthogonal.
I can't help but feel sorry for Jetbrains though, who seem to be in a similar position to Opera back in the late 2000s, a small software company up against a behemoth that can afford to subsidize the development of an open-source alternative to their bread and butter.
And to be honest I never understood the complaint about lack of quality of their documentation vs what Microsoft, Zortech, Watcom, Nantucket and others used to have on those days.
Currently JetBrains is segmenting their products, for example native code languages are only supported in Clion/AppCode, even if you buy Ultimate, one needs to buy two IDEs from them to debug Kotlin/Native.
So lets see how long their management keeps on the right track.
Personally I don't care, because my experience with Borland has made me only use IDEs that are produced from the same companies as the OS SDKs that I use.
That, and Microsoft actively worked to kill them. I don't think JetBrains position is nearly as precarious.
Yes, Anders and a few others eventually moved into Microsoft, but that was a side effect of how bad things were at Borland. Anders refused the offer multiple times from previous team mates that went to Microsoft before he did, until he though that was time to finally leave Borland.
Check this interview.
https://behindthetech.libsynpro.com/001-anders-hejlsberg-a-c...
It'd be nice if you saved this stuff for when you're replying to HN, not to me.
Microsoft in the 80s and 90s were hyper-aggressive towards anyone they considered a key competitor and played dirty. The fact that some of these competitors didn't do themselves any favours doesn't change that (I think, quite uncontroversial) fact.
I don't think VS Code is this huge threat to Jetbrains and as a competitor, Microsoft is not quite the bugbear it once was. If anything, its Jetbrains that's outcompeted their direct competitors (Eclipse, Netbeans) to semi-irrelevance/coma.
They were aggressive with MS-DOS and Windows, their developer tools not really, even with VB and VC++ 32, they started to win when Watcom, Borland, CA, Zortech, Symantec Metrowerks stopped being worthwhile to spend money on.
You can probably make a decent argument that Borland's mismanagement was a misguided attempt to respond to Microsoft's pressure.
#2 is too expensive, #3 is too inconvenient and while #1 isn't as good as jetbrains it's too good enough to justify an upgrade to intellij ultimate. If you are saying native is not even supported in Ultimate this makes things even worse. Jetbrains should release something cheaper in between #2 and #3 that supports many languages but maybe hold back on certain premium features like profiling etc.
I've reported all these bugs with not much in terms of answers. I've even tried contributing but it's a pretty messy codebase to get into. Ergh.
There shouldn't be any reason that it reruns save upon entering/exiting insert mode; are you sure you don't have some kind of keybinding/other setting that's autosaving for you?
The `<tab>` issue is kind of a pesky race condition that's most likely exacerbated by VSCodeVim running slowly on your computer.
Speaking of it running slowly, I would argue against characterizing them as "slow". Some small subset of users seems to have consistently run into this issue, and a decently large subset of those users have realized that the issue is caused by some conflicting plugin, so I'd suggest trying that too.
As for the undo issue, I have mixed feelings about it. Perhaps it could be synced with VSCode, but it's definitely true that when it was first implemented, VSCode did not provide the flexibility to do so.
Overall, I do agree that there's stuff that can improved, but it kinda hurts to see people call them "atrocious". I suspect your main issue with VSCodeVim is really the "slowness" issue. I would try disabling other plugins and see whether it helps.
EDIT: Forgot to mention. Disclaimer: I'm one of the primary maintainers for VSCodeVim.
Sorry :( I hate to be harsh and I don't want this to get you down, because I have a lot of admiration for the work you do (and this goes to any open source work I've ever criticized, really). So, thank you for your work.
But... the usability is really bad. They would be completely fine in a vacuum if vim didn't exist, but the point of comparison exists and it's vim and vim is just crazy fast compared to vscode-vim, it's like comparing a racer... to a fighter jet.
> What's the bug that you have with `2d}`?
That only deletes one paragraph (like 1d}) instead of two. 3d} only deletes two, and so on. It's not consistent with vim.
> There shouldn't be any reason that it reruns save upon entering/exiting insert mode
shrug, I filed an issue about this a couple weeks ago after a decent bit of debugging.
> I suspect your main issue with VSCodeVim is really the "slowness" issue
ish, it's definitely the primary pain point but there's also lots of small bugs and inconsistencies with vim. And I understand that competing with vim itself is hard, but the other comparison point is for example pycharm's vim plugin and vscode's is far behind.
Edit: And just to echo tdfx's point, without your bindings I wouldn't even be on vscode, so there's that :)
The vim bindings aren't perfect and are sometimes slow (you can see a macro insert things character by character) but about on-par with IdeaVim for the IntelliJ side feature wise.
Maybe oni [2] will catch up before vscode fixes their issues but I eagerly await a decent language server modal editing setup.
[1] https://github.com/VSCodeVim/Vim/issues/2688 [2] https://github.com/onivim/oni
There was an atrociously bad "undoing work" issue that I popped out of hiatus to fix, and that bug was the cost of the fix. I meant to add proper support for that, but me not using splits that much (especially for the same file) as well as other commitments have prevented that.
What are those benefits?
I tried to switch from vim to VSCode, and it just felt like it confined me. To be fair, I don't "run vim", per say, I run a shell with tmux inside, split horizontally in two, with vim on top, and two shells (a vertical split) underneath. The left shell on the bottom being used for miscellaneous things, and the right one running some kind of live code checking (with visual results also inside vim).
This setup works great for both c, c++, python, haskell, rust, node and any other programming environment I use. I tried getting something along the lines with VSCode, but it confined me, and it felt like it wanted me to do things "its way", instead of letting me decide what I have found out works through years of experimentation. It's the same with jet brains and xcode and visual studie... It doesn't let me do things "my way" but instead forces me to do things its way, which, if I may say, is highly inferior. I have tried their ways and it's not good.
Sorry for the rant.
I've tried getting something like that going in VSCode, but even just switching between terminals and compiling and so on is just too confining. Whenever I've tried, there's always some part of it that doesn't let me easily do something, because it expects one to use it some other way.
With a shell, tmux, vim and other CLI tools, it's all based on basic primitives that all function the same way and you can compose them as you like. It just works. You can't do that with VSCode or any other IDE. They all put limitations on you and if your preference doesn't fit its, you're out of luck.
I'd love if I could have the same power for managing my todos, tasks, projects, taking notes, README writing, overall agenda with vim, but I can't, so I find it's easily worth it just to use emacs and org.
Here is an example of what you are able to do with emacs and org: https://imgur.com/a/3rTNVYE
And if you need it in markdown, you just manually export it, or set up a hook that does it for you every time the document changes.
And no, the result of the code-blocks in the screenshot is not something I manually inserted into the notes. Org runs the code and inserts the result for me automatically.
Edit: Ah, I see emacs has it's own terminal which is why it was able to support charts and graphs.
I find vscode more useful than vim because I can quickly and easily swap out the pieces of environment I need. Need a terminal real quick? Ctrl`, command, ctrl` again and poof it's gone, with nothing in front of me but my code. Need git real quick? Ctrl shift g. Need one more tab? Another? Ctrl \, and so on.
I usually work with three or for different files opened, some tucked away in a tab that I can quickly shift to when I need it. And when I need to get to my "wall o' terminals", I just switch to that workspace (gnome).
Whenever I watch the local vim lady do her thing, it's an entirely different workflow. Grepping across files, then opening one in vim so it just kinda pops up in a new terminal window. Doing a thing there, then closing it to go work in a different vim window... Admirable memory map of the code base and confidence to just close the file and move on, but not for me.
I'm able to do all of these things too with my setup, although it's not vim driving my setup, it's tmux. Using just plain vim doesn't work for me.
> I usually work with three or for different files opened, some tucked away in a tab that I can quickly shift to when I need it. And when I need to get to my "wall o' terminals", I just switch to that workspace (gnome).
Most of the time, I have two files open too, sometimes three. I never use tabs for files though. If I need to work on multiple files, I have them all open in splits. Seems to work fine all the time. I use ctrlp to easily switch between buffers and files.
> Whenever I watch the local vim lady do her thing, it's an entirely different workflow. Grepping across files, then opening one in vim so it just kinda pops up in a new terminal window. Doing a thing there, then closing it to go work in a different vim window... Admirable memory map of the code base and confidence to just close the file and move on, but not for me.
Yeah, doesn't work for me either... My setup looks like this[1] most of the time, and I'm easily to add any and everything as I need it.
For a while I was running (g)vim8 with the built in :terminal - but I had some character issues with meta mapping (so typing tings like ~ on my Norwegian keyboard layout was a chore). Qt neovim didn't have these issues, whatever caused them - but I also switched back to a tiling wm (i3) - and I'm not sure if screen in neovim term really is better than a neovim on one side and a terminal w tabs on the other.
What I will say is that vim8 has a "better" terminal out of the box than neovim (that realized the idea first) ;in vim switching out of insert mode is easy and allows real nice copy to buffer - say to copy from a repl, and switch windows to paste into a file.
The limit of one (two) x11 clipboards is a bit of a pain, but with setting the x clipboard to default copy/pasting between vim and the rest of the world becomes pretty painless.
Anyway - point being, vim/neovim has great support for managing terminals - but I'm not convinced it's a great idea.
Arguably that's not "your way" either but "vim's way", which you've adopted over those years of experimentation by force. Only now that there are alternative options which are equally as powerful is it apparent that there are other ways of doing those things.
This is probably just a matter of opinion/preference, but I feel like an editor should simply be an editor -and IMO there is no better editor for turning thoughts into code with minimal friction than VIM/Neovim. The OS functions perfectly fine as an IDE for everything else.
I was a little leary when I learned they were tossing out jedi in favor of the VS Python language server. However, after playing with it for a month or so now I can tell that it's a drastic improvement over what's currently in place.
If anybody from the MS team is watching this thread, care to share why you chose to invest in the VS Language Server instead of investing in Jedi further?
But I will say (and continue to say) that we are extremely grateful to David Halter and everyone who has worked on Jedi. It gave the extension the initial IntelliSense support it needed in order to be successful. And we currently have no plans on removing Jedi support for those that prefer it (from the extension's perspective we're actually trying to treat the language server as yet another project we have integrated support for, but where we have a direct line to when a bug or feature crops up that we would like to see addressed ;) .
Lots of people in my workplace have switched to using vscode from pycharm. They still use pycharm once a month to do a global lint analysis or some tricky refactor...but for daily use, it's much more pleasant to use vscode .
In fact, we use vscode with our Dev setup which is all docker+python. Works beautifully (debugger and all)
I've settled in to using vim for the one-shot scripts, and vscode for things that are more complicated. If I have to do big refactoring, then pycharm makes an appearance because this seems to be something vscode really doesn't do well. As much as it's a drastic improvement over Eclipse, pycharm still "feels" bloated, where Microsoft's obsessive approach to UI latency pays dividends in vscode.
I've tried their instructions for ptvsd before and after this update but still haven't been able to use the debugger with docker.
https://github.com/Microsoft/vscode-python/issues/79#issueco...
I eventually switched to pycharm for its autocompletion, class help, even pipenv support natively built-in.
for html/css/js I keep using vscode though.
there is no such thing called universal editor, I still have to use various(vim,geany,vscode,pycharm...) for different scenarios, which is fine but just very time consuming
plus very hard to get django support in vscode which I also need.
[1] https://code.visualstudio.com/docs/python/debugging [2] https://marketplace.visualstudio.com/search?term=django&targ...
I just decided to accept PyCharm the only IDE that can make me productive and go fast!
Some of the above or maybe all of them can be achieved in VSCode, but they never feel native and well integrated in there.
To me PyCharm seems to be built for these, they create, design and develop an IDE exactly for a specific audience. That's why PyCharm for Python, WebStorm for web and PHPStorm for php development.
Reach out to me at dantaylo [at] microsoft [dot] com if you'd be willing to hop on a call to chat more!
The only feature I need most from the VSCode (which is not implemented yet) is Python Remote interpreter[1]. While `ptvsd` is more or less convenient for remote debugging, it doesn't help when you need IntelliSense/linting while developing code being interpreted in container/virtual machine/remote host. IntelliJ PyCharm is clearly ahead here for now.
[1] Issue #79: https://github.com/Microsoft/vscode-python/issues/79
- https://github.com/Microsoft/vscode-python/issues/67
And the VS Code team was asking for folk to interview regarding WSL integration:
https://forms.office.com/Pages/ResponsePage.aspx?id=v4j5cvGG...
(Full disclosure: I work at Microsoft, but in other teams, and am eagerly waiting for the day I can use WSL pyenvs)
My uses are a bit mundane but I'm willing to talk about them!
Also, no idea on integrating tasks... Would be nice to see more in the box. Only windows machine I have now is my work laptop, and we're only targeting windows deploys, so cannot answer more specifically.
Which makes me wonder if kotlin will also survive if intellij goes bankrupt.
I can say that in no way I found VSCode be able to to take on it, even the JavaScript support and they way they have integration with many JavaScript frameworks and other languages frameworks is something I cannot find in VSCode.
Intellij IDEs are really fast, very well integrated and made to get me productive, I couldn't find that in VSCode.
Worth noting, I still use VSCode for JavaScript & HTML & CSS development, but only when it's not heavy development, otherwise Intellij IDEs.
I would strongly dispute this. I love the JetBrains IDEs and have been using IntelliJ IDEA for many years, but performance in general is definitely not one of its strong suits (though it has improved significantly over the years).
IntelliJ just feels very sluggish to me, and regularly lags and hangs on our (rather large) work codebase. Anything that causes the IDE to start indexing takes about a full minute before it is usable again. Then there's the occasional crash due to a bad plugin. And it definitely (at least for me) uses more battery on my MacBook than any other editor I've tried.
Having said all that, I try VSCode and other editors every couple months, but I always find myself coming back to IntelliJ IDEA for the reasons you mentioned. Currently, it's just a superior and "smarter" IDE, though I expect Microsoft to narrow the gap over time.
Not on my Core Duo without turning lots of plugins off.
Eclipse and VS 2017 still manage to outperform it, without disabling anything.
And that continuous indexing that we cannot disable. :(
You can turn off the continuous indexing by "File > Power Save Mode"
VS Code is still years of dev work behind the baseline VS.NET, and likely will remain that way indefinitely (so that people like me can continue paying for the Real Thing). JetBrains will be happy to fill in the gap to bring one up to speed with the other.
They'll do just fine.
Also, don't forget Android studio is built on IntelliJ.
I am scared that it will end in an endless discussion á la "vim vs Emacs" somewhen.
I think jetbrains will do just fine.
So I'd be curious if someone can comment how VSCode compares to PyCharm wrt language aware features, such as: contextual selection, refactoring, finding usages, method/function extraction, auto-fixing, etc...?
1. Same key bindings and similar functionality out of the box across a lot of languages.
2. Language injection, i.e, have a string in your python function containing sql or html or js or anything.
3. Generally better than the competitors. For python that may not be true, as python is highly dynamic and not possible to do too much static analysis, but Pycharm does a good job.
4. All jetbrains products are very well integrated with the ecosystem. e.g, virtualenv, jinja2 out of the box.
That's mostly it. PyCharm is easily going to squish VSCode at the features you listed.
Vim is still my goto (heh, heh!) 'IDE' for C. I still haven't explored, in-depth, going towards Spacemacs for C... but my vim setup is now so well-honed for everything C that I'm not sure what would be the benefit of jumping on top of anything else. Doesn't seem worth it, except for debugging, which I do per-platform anyways.
In any case, VSCode for JS is THE tool, along with Brackets for live preview when making a proto.
It's stupid, but I'm so used to my customised colour scheme it really makes it hard to use anything else... and I'm comfortable enough with ST3 I can't be bothered spending time recreating the scheme from scratch
in fact my theme is already in tmTheme format because it came from ST2, which could always load Textmate themes
Setting up UI under WSL is a bit of a pain, because there's nothing out of the box - so you need to set up X on Windows, or use VNC or RDP. RDP is the easiest by far right now - just install xrdp in WSL, edit the config so that it uses a different port, and connect to localhost from Windows. The result looks like this:
Since then it's acquired a few new goodies, but most of what makes the extension great happened before Microsoft adopted it, so I shouldn't think there's anything stopping Ruby from doing the same.
Shooting from the hip, though, if the desire is for funding, I'm guessing Microsoft wouldn't see much strategic value in putting money into a Ruby extension. The Ruby ecosystem has largely congealed around an ASP.NET competitor, some devops tools that don't really work on Windows, and not much else. Python, on the other hand, is widely used in Microsoft shops. Windows shops need data scientists, too, and it's typically the primary language for cross-platform devops infrastructure.
There's also just a question of which way the winds are blowing. I know the TIOBE index needs to be taken with a dose of salt, but it is interesting to see that Python is entering the top 3 at the same time that Ruby is falling behind Object Pascal.
Hopefully this one just works as v4 actually has an idea of standard protocol that doesn't break.
There's been a Python specific ticket open since November to add in remote interpreter support at https://github.com/Microsoft/vscode-python/issues/79. Current status is "no ETA".
You do lose the dedicated python developer, first class LSP support, and integrated debugger though.
Will give it a whirl for the BigData/ML related scripts. Nice to see one IDE being the GoTo for different lines of work.
Having said that, with the latest update (1.26.1), I'm seeing a significant lag in keystrokes. Not sure whether a plugin is the culprit.
I’m using VSCode now and it’s good, but I do intend to return to Atom when I get some time to properly create an issue for this problem in GitHub and help the team to fix it.
With that, even with no specific efforts toward Atom, it should still see improvements over time.
I've had the best luck with the ElixirLS extension on Linux but there are still a few weird things here or there.
It's by far my favorite dev environment. Tried Eclipse first & was constantly fighting against the IDE. Might make sense for a full time dev but I just want a light editor with some basics like autocomplete & context etc
Great work by Microsoft and all the contributors.
A tool demo would help..
Any alt recommendation for Flask+Connexion?
VSCode is not emacs, but it's not bad at all.