Soon after I reviewed GoLand, I discovered VS Code - a general purpose editor with superlative support for Go. And I have been impressed enough to stay.
I admit, I had shied away from trying out this editor for so long even though I had heard good things about it - partly because of its Microsoft heritage (I am an old LUG guy after all), its Visual Studio heritage (a really resource hungry IDE, from a single really brief encounter several years back) and its Electron heritage (embedded browsers haven’t really impressed me in performance). :)
But VS Code has really really impressed me.
- Its Go plugin works really well out of the box.
- It has out of the box support for Git in the core
- Has a really refined global/workspace/folder settings hierarchy,
- an embedded terminal which is really usable
- A very responsive UI, probably the fastest JS (Actually TS, nevertheless) based editor that I have seen
And best of all … it … is … free!
Much as I love Pycharm, I love the Sublime Text model of pricing more - a single one time pricing for a major version, not an annual one.
And with Microsoft funding full time developers on the project, there is amazing support! Updates are frequent! I actually have an anecdote about the super support by the team.
I had tweeted sometime back about the inability to override GOPATH
at the folder level, now that VS code supports
workspaces with multiple folders in a workspace.
The go.inferGopath logic in the #golang extension of @code (VSCode) is weird.
— Sandip Bhattacharya (@sandipb) December 2, 2017
It looks *up* for an src folder and sets GOPATH to one level above that.
Isn’t it more common to add the $GOPATH itself as a folder? In which case src will be *below* the folder?
Ramya from the dev team noticed my tweet on a Sunday and I clarified the use case in a follow up tweet.
Thanks for the explanation, Ramya. My use case is that I typically have multiple related projects in the same workspace. Each have their own GOPATH. can’t use vars like $workplaceFolder in settings as they’re not supported. Am I using vscode incorrectly? https://t.co/KftAkGRaD5
— Sandip Bhattacharya (@sandipb) December 10, 2017
I then filed a Github issue, and within 4 hours on a weekend, she had a commit out!
I was sold. Even for a paid software this is amazing, and this is free!
I don’t like being split between editors. I already use Sublime Text 3 for my adhoc editing work (I am typing this in it right now), Pycharm for Python - both with personal licences. I can afford to have another editor for a specific language - I am not even considering the irritable matter of paying for two editors from the same company (no, the all inclusive package from them is way out of my budget). Now I am trying to see if I can move my Python work to this editor - so far it seems pretty encouraging, it has pretty good support for virtualenvs. I need to spend more time on it though - Pycharm has set a pretty high bar.
comments powered by Disqus