These are chat archives for ensime/ensime-atom

6th
Mar 2016
Magnus Andersson
@magnusart
Mar 06 2016 07:45
@hedefalk why is the package called ensime-client but the project ensime-node? ;)
Viktor Hedefalk
@hedefalk
Mar 06 2016 08:57
Node being implicit in npm. You don't call a node package node. But repo-wise it descriptive.
Magnus Andersson
@magnusart
Mar 06 2016 08:58
OK.
I just thought it would be ensime-client-node or something. :)
Magnus Andersson
@magnusart
Mar 06 2016 09:17
Anyhow, I’m poking around a bit. Still a lot to get used to, but I’m wondering about the Jerky and Swanky protocols. As it looks right now Swanky is used in ensime-client, but I understood Jerky as beeing the ”future”, at least when debugging is concerned. Is that correct? :)
In that case are there plans for moving over to Jerky, is it high up on the list?
Viktor Hedefalk
@hedefalk
Mar 06 2016 12:28
@magnusart Yeah, it was on my list, but I figured ensime-client-node was to long :)
We're actually using Jerk.
Jerk = json, swank = s-exrpressions. -y = over websockets. So we should make the switch from Jerk to Jerky. It might seem confusing because Jerk is json but over TCP in swank envelopes, so there is some Swank code in ensime-atom to handle that.
It's on my list if
… at first sign of anything needed to be fixed in the protocol code I might as well make the switch. I actually think it's sub hour of work and could just strip some lisp code then. We still need some to parse .ensime though.
But we are already using json which was the big switch.
Magnus Andersson
@magnusart
Mar 06 2016 14:44
Aha. That puts the Oh noes, this is crap, but fuck it and wait for json protocol-comment in context. I was seeing JSON in the protocol-examples folder but then also swank-protocol.js which was confusing. Are the Jerky protocol is that documented anywhere? I did see some tests in ensime-server.
Viktor Hedefalk
@hedefalk
Mar 06 2016 17:07
:)
Magnus Andersson
@magnusart
Mar 06 2016 19:50
@hedefalk I’m not familiar with the NPM workflows (hence all newbie questions). When you work with ensime-node do you publish it locally and then reload the plugin or can you depend on a local project during atom-plugin dev?
Jari Pennanen
@Ciantic
Mar 06 2016 20:10
@magnusart I think it's easiest to just publish the build directory to node_modules of the ensime-atom when developing if it's required to test with ensime-atom
npm also has feature: https://docs.npmjs.com/cli/link but it doesn't always work
Viktor Hedefalk
@hedefalk
Mar 06 2016 21:00
I'm using link. I wrote about it here: http://ensime.github.io/editors/atom/development/
It's basically just softlinks.
I want to be clear that I'm really gonna rewrite ensime-node totally… So it might be hard to PR against it until maybe a week. But please explore!
Magnus Andersson
@magnusart
Mar 06 2016 21:05
Cool, I just want to play around a bit. I’m trying to learn how to create gutter icons right now. Getting some results. I wonder if you have any opinion around debug markers? I’m thinking something like this where the line number is replaced http://www.hashbangcode.com/sites/default/files/images/xdebug_netbeans_running.png
It’s so that debug makers are not covered up by other icons. But maybe this is a bit nonstandard which is bad.
Viktor Hedefalk
@hedefalk
Mar 06 2016 21:07
I think red dots are pretty much standard, but I don't have a particular strong opinion…
Magnus Andersson
@magnusart
Mar 06 2016 21:11
Not the actual icon but where it is displayed. I could use the gutter where other icons appear. Or I could hide the line number and have it appear there instead, which makes them always visible and not hidden by other gutter icons
I’m on the fence. I don’t like doing something non standard. But it is really annoying when debug icons are hidden by other icons (and vice versa)
Viktor Hedefalk
@hedefalk
Mar 06 2016 21:14
Totallt agree. You can always add gutters in Atom. Takes up real estate though so should be opt-in somehow. Like "debug mode" only…
I mean add gutter lanes.
Magnus Andersson
@magnusart
Mar 06 2016 21:14
Ah, yes. Maybe that is a better way to do it.
Viktor Hedefalk
@hedefalk
Mar 06 2016 21:15
I tried that before with the implicit markers, but in that case I don't think it was a fit.
Magnus Andersson
@magnusart
Mar 06 2016 21:16
Perhaps a setting like you said, one where they have their own lane and one where they share the default gutter lane. I’m using the word count tutorial to hack around and see how things works right now.