What Editors / IDE's are you using while programming with GoLang?

polaris · · 1958 次点击    
这是一个分享于 的资源,其中的信息可能已经有所发展或是发生改变。
<p>I&#39;m new to GoLang and I&#39;m curious to know what IDE&#39;s other people are using for syntax highlighting, compilation, code refactoring and general code readability in GoLang.</p> <p>FYI: This is not a discussion around vim vs. emacs or IntelliJ vs. Eclipse or random-tool-x vs. random-tool-y.</p> <hr/>**评论:**<br/><br/>kaipi: <pre><p>vim + vim-go</p></pre>fr4nk3n: <pre><p>Same here, vim-go is awesome. </p></pre>BrianWilliamDouglas: <pre><p>Same, Vim + vim-go.</p> <p>A terminal is really all you need for this beautiful language.</p></pre>beefsack: <pre><p>Neovim + vim-go here.</p></pre>borring: <pre><p>I saw a proof-of-concept demo video of neovim + asynchronous live-linting of go code. I can&#39;t wait until something like that gets integrated with vim-go</p></pre>Innominate8: <pre><p>This, plus YouCompleteMe.</p></pre>HaveSomeFreeKarma: <pre><p>Gocode is an amazing utility.</p></pre>qudat: <pre><p>It&#39;s hard to beat. I used to work exclusively in Sublime until I got the itch to try vim out, never looked back. Except now I try to use vim commands everywhere.</p></pre>binarypie: <pre><p>same here</p></pre>vic3lord: <pre><p>Same :)</p></pre>egonelbre: <pre><p>Sublime Text + GoSublime + &#34;some-terminal&#34;.</p></pre>Incubuss: <pre><p>I&#39;m always surprised when this or Atom + go-plus (or some other text editor) isn&#39;t the answer. I used to rely heavily on IDEs while working in other languages (Java in particular), however I&#39;ve always found that Go and its tools are simple enough that I don&#39;t need the overhead of an IDE there.</p></pre>klaaax: <pre><p>Atom is fn slow on some machines , so no surprise.</p></pre>anacrolix: <pre><p>Writing an editor in JavaScript. What could go wrong.</p></pre>zerok: <pre><p>Emacs with go-mode. </p></pre>Phovox: <pre><p>Same here! A must to go! ;)</p></pre>hangoverpoop: <pre><p>Everyone knows that emacs is an OS, not an editor!</p> <p><sup><sup><sup><sup>I&#39;ll</sup></sup></sup></sup> <sup><sup><sup><sup>show</sup></sup></sup></sup> <sup><sup><sup><sup>myself</sup></sup></sup></sup> <sup><sup><sup><sup>out</sup></sup></sup></sup></p></pre>Luett_un_Luett: <pre><p>Atom + go-plus + project-manager</p></pre>jewishobo: <pre><p>I use atom + go-plus. But what is project-manager?</p></pre>asdf072: <pre><p>What it sounds like. Select a project, and that projects&#39; files appear to the left. I&#39;m sure there&#39;s more functionality, but that&#39;s all I use it for. (Oh, and project-wide searches! Forgot that.)</p></pre>Luett_un_Luett: <pre><p>Just another plugin that helps with managing projects. You can install it into atom via apm or via preferences.</p> <p>EDIT:</p> <p>See: <a href="https://atom.io/packages/project-manager" rel="nofollow">https://atom.io/packages/project-manager</a></p></pre>FIuffyRabbit: <pre><p>I really want to use atom but its text rendering is so awkward to look at.</p></pre>klaaax: <pre><p>LiteIDE, better than the rest, supports go-oracle , testg,debugging with breakpoints with GDB ...</p></pre>Yojihito: <pre><p>Eclipse + Go Plugin.</p></pre>peterbourgon: <pre><p>So you&#39;re the one!</p></pre>Yojihito: <pre><p>ᕕ( ͡° ͜ʖ ͡°)ᕗ</p> <p>Am I such a minority? The choosen one?</p></pre>gohacker: <pre><p>Follow the white Gopher.</p></pre>cryptrol: <pre><p>Another one here, I find Eclipse + Goclipse very convenient</p></pre>nokkare: <pre><p>Acme, Go tools and custom tools</p></pre>dlsniper: <pre><p>Intellij IDEA or Android Studio + the Go plugin (nightly, from the repo). </p></pre>schumacherfm: <pre><p>Same here. Love it!</p></pre>gschier2: <pre><p>Some favorite features that you get with intellij and not others is auto import, inline documentation lookup, and proper jump-to-source (even for external and core packages)</p></pre>partkyle: <pre><p>There&#39;s &#34;goimports&#34; as a replacement for gofmt in all major editors to get a really simple auto import on save. It&#39;s definitely not as nice as Intellij&#39;s, but in practice it works really well. </p> <p>There are also plugins for godef on all major editors as well, which provide proper jump -to-source as well. </p> <p>There&#39;s no inline docs lookup that I know of, but godef seems to do the trick for me and Gosublime includes the method definition in the gutter so I can tell what types are required for a given function. </p> <p>The IDE integrations are nice, but I prefer the lightweight editors with the simple tools to add all the IDE-like features I need. Quick startup is a feature that intellij just can&#39;t match right now. </p></pre>schoenobates: <pre><p>Looking at the repo it appears that this being supported by the IDEA devs - I wonder if we&#39;ll see a gostorm or something similar?</p></pre>mdwhatcott: <pre><p>The go plugin devs from Intellij presented a lightning talk at gophercon 2015. When asked if there was a roadmap to releasing an official IDE for go their answer was a simple &#34;no&#34;.</p></pre>BoTuLoX: <pre><p>Didn&#39;t someone from the Go team say that Intellij was working on a Go IDE and even claimed he didn&#39;t know wether he was supposed to reveal that or not?</p></pre>schoenobates: <pre><p>Did they mention if this was going to be an official plugin?</p></pre>dlsniper: <pre><p>When it&#39;s good enough it will be in the official &#34;stable&#34; repository (not that alpha/nightly aren&#39;t official) but the plugin is open source and it definitely welcomes contributors (even if by contributing you open up a detailed issue). </p></pre>sandokan1572: <pre><p>lightning talk: <a href="http://youtu.be/3sy0hR0BIiM" rel="nofollow">http://youtu.be/3sy0hR0BIiM</a></p></pre>dlsniper: <pre><p>There&#39;s no need for a separate IDE, thr plugin runs an almost (if not all) IDEs from JetBrains,including the free version of IDEA. Is there a specific reason to want an IDE that ships with the plugin installed by default vs installing it on your own? </p></pre>mrkaspa: <pre><p>Atom + Go Plus</p></pre>izuriel: <pre><p>Seconded. I was using Sublime Text with GoSublime but found go-plus in Atom actually contained more relevant features for larger project management and getting work done in a timely manner.</p></pre>Bromlife: <pre><p>Like what exactly? I found Atom lacking when compared to ST3, especially the interface lagginess.</p></pre>izuriel: <pre><p>I was a huge Sublime Text fan prior to switching to Atom. I mean, I&#39;m the only developer I&#39;ve ever met that uses Sublime that owns a license to it (that&#39;s not an exaggeration, apparently it&#39;s not common practice).</p> <p>Things I found likable about Atom unrelated to Go (since Go is not the only development that I do) was their integration of their package manager. I do really enjoy Package Control, but it doesn&#39;t quite stand up to completely integrated (and native) package manager. The general capability of packages in Atom is much more rich than in Sublime. Maybe this is an illusion but I find that a lot of the Atom packages take full advantage of being able to create whatever elements for their UI they need and so you get some really useful UI augmentations.</p> <p>Specific to several packages it boils down to a couple. I found that Atom&#39;s git-plus package has a lot of great features (which, funny enough I don&#39;t use but was drawn to as my team would be more receptive of the editor integration than using a command line). I prefer Atom&#39;s Babel package for ES6 highlighting, as well as it&#39;s default JavaScript language package runs JSLint (when available) on save by default which was very nice to have. The go-plus package has (really) two features that were great to have (at the time I switched) which was running and rendering test coverage state on save with <code>go cover</code>. Areas of code not covered are highlighted red giving immediate insight into the coverage state for any given file. As well as a <code>go vet</code> on save in addition to the standard <code>gofmt</code> <code>golint</code>. </p> <p>Is Atom still sluggish? I would be a liar if I didn&#39;t say yes. Sometimes the UI just can&#39;t keep that responsive feel like a fully native app can so yes it&#39;s far more sluggish than Sublime. The question really isn&#39;t about it being sluggish, it&#39;s does that really effect my workflow? The answer to that is actually no. I have problems with Atom occasionally, requiring a refresh of the editor - but I&#39;ve found that general workflow improvement is still higher with Atom than Sublime.</p> <p>Overall does that mean I advocate a switch from Sublime to Atom? Not quite. Again, as a fan of Sublime (and now Atom) my real response to Atom vs. Go questions is whichever one you like best is the one you should stick with. If you haven&#39;t used Atom since it&#39;s 1.0 release, I urge you to try again but I wouldn&#39;t recommended switching to it if you&#39;re already really happy with Sublime. The reason I switched was due to generating a &#34;required and recommended&#34; dev tool list for new developers at my company and had to evaluate the merits of Sublime vs. Atom and which had more general feature capability in regards to Go development - Atom was selected so I began using it to help iron out any general issues other dev members would encounter.</p></pre>Azzk1kr: <pre><p>What&#39;s your experience with the performance of Atom? It&#39;s something that really bugged me, because it tends to be slow. I really want to like it, but it just can&#39;t grab me.</p> <p>Edit: screw me, you already wrote something about the performance.</p></pre>nilium: <pre><p>vim with vim-go and Sublime Text with GoSublime. I end up using Sublime Text more when it&#39;s not a project I started, just because I don&#39;t have anything in my head about how to navigate a project yet and Sublime tends to be faster for getting that.</p></pre>varun06: <pre><p>in vim-go it is just using :GoDef(gd) and then ctrl+o to go back :)</p></pre>nilium: <pre><p>That&#39;s easy enough. The problem I have is more rapidly hopping around files and scrolling through them while I get acquainted — scroll wheel works in Vim but it feels wrong and slow to use it in that environment.</p> <p>Also, I use a variable width font for coding now, so I spend more time in Sublime when I feel like using it. Hard to escape the terminal once you spend the majority of your time in it, though, and I lose a lot of basic editing capabilities in Sublime.</p></pre>CapoFerro: <pre><p>emacs with go-mode, goimports, and gofmt hooked onto file save and some plugin I forget that lets me inspect or jump to symbol definitions. I also wrote a yasnippet template for if err != nil which I use endlessly.</p></pre>tongucyumruk: <pre><p>That tool is probably <a href="https://godoc.org/golang.org/x/tools/cmd/oracle" rel="nofollow">Go Oracle</a>. It has some real nice features like inspecting type of channels.</p></pre>rock_neurotiko: <pre><p>Emacs with go-mode and other things that execute go-fmt on save, and compile the project showing the errors on save or change.</p></pre>st3fan: <pre><p>Emacs. Gofmt on save. With gofmt set to goimports which does both formatting and imports cleanup.</p> <pre><code>;; go get -u github.com/nsf/gocode ;; go get -u code.google.com/p/go.tools/cmd/goimports ;; go get -u code.google.com/p/rog-go/exp/cmd/godef (exec-path-from-shell-copy-env &#34;GOPATH&#34;) (add-hook &#39;before-save-hook &#39;gofmt-before-save) (setq gofmt-command &#34;goimports&#34;) (add-hook &#39;go-mode-hook (lambda () (setq truncate-lines t) (setq indent-tabs-mode t) (setq tab-width 4) (setq compile-command &#34;go build&#34;) (local-set-key (kbd &#34;C-c C-r&#34;) &#39;go-remove-unused-imports) (local-set-key (kbd &#34;C-c k&#34;) &#39;recompile) (local-set-key (kbd &#34;C-c C-f&#34;) &#39;gofmt) (local-set-key (kbd &#34;C-c C-k&#34;) &#39;godoc) (go-eldoc-setup) (set-face-attribute &#39;eldoc-highlight-function-argument nil :foreground &#34;green&#34;))) </code></pre></pre>anticucho: <pre><p>Does it get any more beautiful than <a href="http://i.imgur.com/sR9UHGS.png">vim, go-vim and YouCompleteMe</a>?</p></pre>varun06: <pre><p>vim + vim-go + tmux one terminal to rule them all...</p></pre>ecmdome: <pre><p>This .... I was a sublime user and just got tired of heading into the terminal. I have an amazing VPS I use as my dev machine with a perfect tmux session for each project </p></pre>BoTuLoX: <pre><p>I&#39;ve never found the appeal of running tmux, specially for vim.</p> <p>Then again, I am running a tiling window manager; but tmux being limited to one window and vim having buffers and tabs, what&#39;s the benefit?</p></pre>Remi1115: <pre><p>I prefer programming remotely in SSH most of the times (multiple computers, no need to commit/sync after every change). If you keep the Tmux session running on the remote machine, not much set-up is needed before you can start programming. Your windows and all are still in the same layout and are in the same state. Just connect, open Tmux and you&#39;re good to go. You could even borrow someone else&#39;s computer. But I&#39;m not using a tiling window manager still. So maybe that&#39;s why I like Tmux so much.</p> <p>On-topic: I&#39;m using Vim with Vim-go, without some extra features like auto completion and auto-importing of packages.</p></pre>anacrolix: <pre><p>Connect and attach in one go. ssh blah@blah -t tmux a</p></pre>kromem: <pre><p>The benefit for me is in having a preserved workspace across my project. </p> <p>I have a script which sets up my dev environment if not set up, or else reconnects to the session if detached. </p> <p>In the first window is a split of my Go backend running with autoreload with gin, my postgres docker log, and the frontend being served up via npm.</p> <p>Second window is a split between my Go project in vim, and goconvey&#39;s runner, with the vim window &#34;maximized&#34;. </p> <p>Third is the same but with vim for frontend dev and karma test runner in second pane (with the bottom pane sized to only show the test pass/fail last line).</p> <p>Fourth is for my devops environment with vim for my ansible scripts on top and the runner for my ansible playbook calls on bottom.</p> <p>This would be a huge pain to setup &#34;as needed&#34; and manually, and having all of that available is a time saver. I may go a few days before needing window 4, but as soon as I do, it&#39;s ready for me, setup exactly as I&#39;d like it.</p></pre>nowayno: <pre><p>I use Sublime. When I want to print source code, I&#39;ll open a file/package in WebStorm (w/ a Go plugin).</p></pre>IntellectualReserve: <pre><blockquote> <p>print source code</p> </blockquote> <p>Why would you need to print your source code?</p></pre>nowayno: <pre><p>To read. Was that not obvious?</p></pre>ecmdome: <pre><p>o_0 but the trees!!! </p> <p>Seriously though you&#39;re the only person I know who does this... But whatever works.</p></pre>LimEJET: <pre><p>Really? </p> <p>Code is a lot easier to discuss and mark up if it&#39;s printed. It&#39;s useful in small teams when someone has an issue they can&#39;t find. </p></pre>ecmdome: <pre><p>I&#39;ll actually have to give it an honest try sometime.... But you don&#39;t ever feel like it&#39;s a huge waste? Showing a dev environment over a projector or TV sounds more productive. Especially since some of my code has so many lines.</p></pre>LimEJET: <pre><p>You never print <em>all</em> of the code, you narrow it down first.</p> <p>There&#39;s also the fact that text on paper is less straining to read.</p> <p><strong>Edit:</strong> Not to mention that using marker pen on a TV is usually a big no-no.</p></pre>izuriel: <pre><p>Mobile apps for VCS systems or responsive Mobile VCS sites usually enable reading for me. I&#39;d rather have to scroll left and right than manage pages of code and making sure they remain organized.</p></pre>taushif: <pre><p>Used: LiteIDE, IntelliJ IDEA</p> <p>Currently using: Atom, VIM</p></pre>1Gijs: <pre><p>Feature wise LiteIDE is by far the best. You name it, it supports it. For example it will show symbol info including the remarks (not only the function definition). Refactoring works well and very fast.</p> <p>However, I do not really like its layout and design. To much screenspace is wasted on bars that are to wide and its not as tweakable. And then there is also the question of continuity: there are some small bugs but there has not been an update for several months now. </p> <p>I now use Atom + Go-plus although its not very responsive and has almost no special features (compared to LiteIDE). I try not to use other packages because they will break of even slow it down more. But I like the design and layout :-) And I know it will improve and still exist in the next years.</p></pre>FUZxxl: <pre><p><code>ed(1)</code>.</p></pre>google_you: <pre><p>MS Word + MS Comic Sans</p></pre>davityle: <pre><p>This made me laugh. Unless you were serious....</p></pre>gaoxiang_ian: <pre><p>spacemacs</p></pre>lapingvino: <pre><p>me too!</p></pre>ironmig: <pre><p>Kate</p></pre>dermesser: <pre><p>Absolutely almost exclusively LiteIDE. Good stuff.</p></pre>whodkne: <pre><p>In the minority, Komodo</p></pre>4ad: <pre><p>Acme, sam, and Unix.</p></pre>THUNDERGROOVE: <pre><p>Pretty similar to everyone else. When I was newer and more worried about learning the language than an editor as well, Sublime with GoSublime worked wonders. I&#39;ve since tried Emacs with go-mode, and Vim with vim-go.</p> <p>I&#39;ve stuck with Vim. I would suggest to anyone planning to use Vim+vim-go to get YouCompleteMe as well. Not only do you not need to use omnicomplete, but YCM is much snappier and doesn&#39;t have that split second delay when trying to complete something.</p> <p>It also shows type information in the completion which is great.</p></pre>l_a_m: <pre><p>emacs with go-mode, go-fmt on save ... and some other tools</p></pre>lifter: <pre><p>For anyone that&#39;s unfamiliar with VIM, I normally recommend Atom with <a href="https://github.com/joefitzgerald/go-plus" rel="nofollow">Go-Plus</a>. It makes for a really pleasant coding experience, with little to no setup.</p> <p>For anyone who&#39;s at least a little familiar with VIM or is interesting in picking it up, VIM + <a href="https://github.com/fatih/vim-go" rel="nofollow">vim-go</a> + <a href="https://github.com/Valloric/YouCompleteMe" rel="nofollow">YouCompleteMe</a>.</p> <p>The learning curve for VIM is pretty steep (when compared to Atom), but if you&#39;re willing to put in the time and effort it can be incredibly rewarding. After close to a year of consistent use, I finally feel like my productivity using VIM has far exceeded my productivity using Atom.</p></pre>kawera: <pre><p>Textmate + Keyboard Maestro + TextExpander + Alfred + Dash</p></pre>foxh8er: <pre><p>Atom + Go-Plus OR LiteIDE.</p> <p>I do think that you <em>need</em> an IDE for Golang because of how strict it is. </p></pre>izuriel: <pre><p>You never <em>need</em> an IDE. Sometimes you think you do but if work without one you&#39;ll find how easy it really is. </p></pre>foxh8er: <pre><p>I tried to learn Go without &#34;help&#34;, and I gave up within the first few minutes. </p> <p>I tried it with Lite and I&#39;m attached. Having autocompletion and continuous linting is amazing for my sanity. </p></pre>izuriel: <pre><p>You can get around autocompletion by just using the language consistently and you&#39;ll begin to memorize things. I&#39;m really looking forward to Go 1.5s introduction of <code>go doc</code> so that I can ditch dash/godoc.org. Ultimately I get around a need for autocomplete by referencing documentation constantly.</p> <p>When I do have autocomplete (such as when I work in C# or something like that) I find myself generally referencing docs even after find something in autocomplete menus as the only real benefit I&#39;ve found from autocomplete (and seen from other developers) is to save those too lazy to type out code constantly.</p> <p>So, based on personal experience, the &#34;requirement&#34; for <em>help</em> is strictly artificial and something you forced upon yourself mentally. I&#39;m sure you&#39;re capable of doing things without <em>help</em>.</p></pre>Bromlife: <pre><blockquote> <p>I tried to learn Go without &#34;help&#34;</p> </blockquote> <p>Please explain &#34;help&#34;?</p></pre>izuriel: <pre><blockquote> <p>Having autocompletion and continuous linting is amazing for my sanity.</p> </blockquote> <p>They do already answer you <em>slightly</em>.</p></pre>ergotayours: <pre><blockquote> <p>I see the benefits of syntax highlighting, just as I see the benefits of diapers.</p> </blockquote> <p>― Rob Pike</p></pre>roveboat: <pre><p>Since you seem to be from the 80s, welcome to the Internet! These days IDEs do much, <em>much</em> more than syntax highlighting, you should try one some day! Again, welcome to the future!</p></pre>ecmdome: <pre><p>I mean go-sublime, vim-go and the likes bring to you everything you&#39;d need in an IDE to an editor.</p> <p>Edit: s/vim/editor</p></pre>roveboat: <pre><p>I&#39;m honestly not sure what the difference is these days - it&#39;s just a bunch of text windows and keyboard shortcuts either way. </p></pre>ecmdome: <pre><p>IDEs tend to be more opinionated and force certain standards on you. Or just bloated with things you don&#39;t need. </p> <p>For me they&#39;re excellent when working with a language that has a strong UI library and a visual testing component in the IDE. </p> <p>But sublime by itself is just a text editor with open source plugin functionality.</p> <p>Vim is all of that and a ton more, not to mention it runs right in your terminal.</p> <p>Vim is free and sublime is cheap... The plugins are all free and if you spend time customizing your setup it can be a really great development experience.</p> <p>We use the command line a lot in go... And you most likely develop on a *nix system. That&#39;s why I love tmux + vim + vim-go + YCM for completion.</p> <p>Tmux allows you to have panes and windows within a single terminal session... You can suspend this session and attach to it again. I run mine on a digital ocean or AWS instance so I can ssh into it from anywhere and have my development environment.</p> <p>It seems complicated but once you learn the shortcuts and workflow this becomes a must.... Your workflow improves so much. </p> <p>Hope I was able to help.</p></pre>1Gijs: <pre><p>Maybe you should google that name first before commenting... ;-)</p></pre>izuriel: <pre><p>Just because Rob Pike has done great things doesn&#39;t mean everything he thinks is golden or correct. Syntax highlighting is unnecessary but very useful when you have it. Anyone who denies that is lying. </p></pre>roveboat: <pre><p>I&#39;m not disagreeing with the uselessness of syntax highlighting ;-) Nor is appealing to authority that great of an argument ;-)</p></pre>dhdfdh: <pre><p>But appealing to <strong>knowledgeable</strong> authority is.</p></pre>BoTuLoX: <pre><p>That&#39;s still appeal to authority. Everyone makes mistakes.</p> <p>Or maybe things are just simpler:</p> <p>Rob Pike is used to working without syntax highlighting and his brain doesn&#39;t benefit from the visual information as much as other people&#39;s. Personally syntax highlighting helps me understand scope and flow in a program much faster.</p></pre>dhdfdh: <pre><p>I disagree with syntax highlighting and find it distracts from everything with candy and fireworks.</p></pre>BoTuLoX: <pre><p>Well, that would be you, which is exactly my point. Some people find it distracting, some of us find it very helpful.</p></pre>dhdfdh: <pre><p>Yes, you could call it personal preferences, but the science has shown differently. Different colors grab your attention in different ways. A multitude of colors is the bain of publishing and the web. Advertising uses color to distract you from things. And on and on and it&#39;s too much to go into.</p></pre>BoTuLoX: <pre><blockquote> <p>but the science has shown differently.</p> </blockquote> <p>Do you have a link to the study/studies? If done on programmers I&#39;m interested.</p> <p>I&#39;ve personally tested this and clearly noticed syntax highlighting to have helped me. Hell, I tried to abandon molokai (a colorscheme with a high contrast) for a lower contrast colorscheme for aesthetic reasons, just to end up seeing it took me longer to &#34;get&#34; the code, so your claim piques my curiosity.</p></pre>ergotayours: <pre><p>IDEs are a bad design. Surely a Go programmer understands the value of simplicity and careful design over feature count.</p></pre>elazarl: <pre><p>Syntax highliting, <a href="http://www.ppig.org/sites/default/files/2015-PPIG-26th-Dimitri.pdf" rel="nofollow">scientifically and empirically</a>, have reduced error rates in software development.</p> <p>Uninformed opinions <em>may</em> have similar benefits, but this is not yet scientifically proven.</p></pre>champioj: <pre><p>Proved on 10 student (I wouldn&#39;t call that representative) on a dynamic language where these 3 representations mean different things:</p> <pre><code>foo: bar foo : bar foo :bar </code></pre> <p>The title of the paper is </p> <blockquote> <p>The impact of Syntax Highlighting in Sonic Pi</p> </blockquote> <p>And that&#39;s what it is, nothing more, nothing less.</p></pre>elazarl: <pre><p>This is just an example I was able to find with a few minutes of googling. But even taken as it is, don&#39;t you think this example should make one wonder whether syntax highlighting have benefit in general? What about the fact it is the industry standard in every software that displays source code is to use syntax highlighting? Do they do that out of spite? You know that VisualStudio makes research on real professional programmers. They invested the time to support semantic syntax highlighting. Surely they would be happy to cut VS latency if they found semantic syntax highlighting doesn&#39;t help people.</p> <p>Here is another teaser, <a href="http://www.cs.cmu.edu/%7Ewjh/Emily.html" rel="nofollow">from the sixties</a>, where it was found that syntax highlighting made coding take longer, but with fewer mistakes.</p> <p>One can find more empirical research supporting the fact that syntax highlighting have benefit, but I assume, you would probably claim it was never proven specifically to Go, and Go was so cleverly planned that for it specifically syntax highlighting would have no benefit. Every paper would deemed to be either too old to be relevant, on a different language, with problematic methodology, with non representative group, with bad methodology. Kind of like when arguing with anti-vaccs.</p> <p>So I&#39;m not trying to convince you that syntax highlighting is good, just be skeptical, and don&#39;t say syntax highlighting has no positive effect. Especially if you can&#39;t support it with evidence.</p> <p>What makes you so sure syntax highlighting would have no benefit for other languages. At the very least, you should avoid making sweeping statements about the lack of value in syntax highlighting in Go, and be skeptical about it.</p> <p>(PS, in Go you also have <code>a* /</code> and <code>a*/</code> have two different meanings. Also combinations of backtick and single quote could be lethal. Not sure why was it chosen in the first place)</p></pre>champioj: <pre><p>I never said that syntax highlight doesn&#39;t have benefit and I don&#39;t really know where you found statement about the lack of value in syntax highlighting in Go. You ask me to be skeptical, I am. Just not in the same direction than you.</p> <p>Actually, my original complain was about presenting a paper as proof when it has so many difference with how professional develop in go.</p></pre>

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1958 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传