These are chat archives for ensime/ensime-atom

3rd
Dec 2015
Pocket7878
@pocket7878
Dec 03 2015 04:01

Hi, I'm trying to use ensime-atom with my project.
And I got many error:

  • not found: <bla bla bla>
  • object <bla bla bla> is not member of package ...

It looks like ensime doesn't handling my project's classpaths.
I build my project with sbt, and I got not error with ensime-emacs.

Is there any options needs to set?
Matthew de Detrich
@mdedetrich
Dec 03 2015 05:52
@hedefalk My issues where due to an outdated sbt-ensime, its working, ensime-atom is working a lot better now
you can probably close that issue that I made
I think it would be nice for ensime-atom to use gen-ensime internally, rather than the user having to explicitely add it as a plugin
Matthew de Detrich
@mdedetrich
Dec 03 2015 06:46
Hmm spoke to soon, still getting false positives on imports
oh well
Viktor Hedefalk
@hedefalk
Dec 03 2015 07:28

@mdedetrich Please report on ensime-server, but check FAQ: ensime/ensime-server#673

About gen-ensime, thing is some people actually use other build tools, like mvn :) However, I’m up for adding an optional feature to use an sbt build and watch on that to auto-rebuild .ensime. Not super-prio for me personally, but pleare PR :)

Matthew de Detrich
@mdedetrich
Dec 03 2015 07:28
Yeah I don’t think I can report anything useful, this is company code and I don’t have the time to isolate it
Like my report would be “this doesn’t work”, which is what I have been saying, and I don’t think that its that helpful
Viktor Hedefalk
@hedefalk
Dec 03 2015 07:32
@mdedetrich fair enough.
Matthew de Detrich
@mdedetrich
Dec 03 2015 07:32
Sorry about that :(
Viktor Hedefalk
@hedefalk
Dec 03 2015 07:33
I know I have one project that get’s red squiggles on imports in Ensime but not in Eclipse - so there is something more than just presentation compiler at work there. I’m going to revisit that soon and I’ll see if I can isolate.
Matthew de Detrich
@mdedetrich
Dec 03 2015 07:36
Cheers thanks :thumbsup:
Jeff Wilde
@jeffwilde
Dec 03 2015 20:37
are errors supposed to be marked within the atom editor (e.g. squiggly red underline), or just clickable line numbers in the Ensime pane at the bottom? (I’m only seeing the latter)
Viktor Hedefalk
@hedefalk
Dec 03 2015 22:29
@jeffwilde not implemented yet. hasn’t really been top prio for me personally (don’t do much errors :) ) but I will add it once I’m done with my BIG REFACTOR to allow multiple ensime instances.
Jeff Wilde
@jeffwilde
Dec 03 2015 22:35
I figured it wasn’t implemented yet, but the readme isn't clear: mentions showing errors and warnings as done, but only calls-out the gutter markers as not done yet
I’ve read through #30, I’m excited for that as well! Mind you, I do errors all the time, so I’d like squigglies, too. :)
Viktor Hedefalk
@hedefalk
Dec 03 2015 22:41
@jeffwilde ok. yeah, it should actually be pretty simple. I made gutter markers for implicits but that was after I already did the errors thing. I wanna redo that whole panel too. I just need to fixup this whole multi-instance thing first. I'm pretty much moving everything around. I basically took some tight corners when starting out that is a bit painful to straight out. The abstractions are leaking everywhere so it’s a bit of work to support multiple instances. The most painful stuff is doing UI for selecting I think. I might do something super simple to begin with.
Jeff Wilde
@jeffwilde
Dec 03 2015 22:48
Yeah, I like what I’ve read about the direction you’re going with the bottom panel re-work, sounds like it’s going to resemble https://github.com/atom-haskell/ide-haskell
Viktor Hedefalk
@hedefalk
Dec 03 2015 22:49
I might ask for brave testers pretty soon, there can probably be some regressions. I think I have something now that at least is running like before but not really supporting multi instances anyways. My todo:
  • work on UI for starting/stopping by selecting which .ensime
  • hooks for switching out ui components when changing active text editor, specifically error panel and status bar in the bottom
@jeffwilde Yeah, I’m all ears for suggestions!
Jeff Wilde
@jeffwilde
Dec 03 2015 22:53
I’d be interested in volunteering. I’ll need to bone-up my atom plugin knowledge, though.
Viktor Hedefalk
@hedefalk
Dec 03 2015 22:58
@jeffwilde Awesome! My plan is to work on it tomorrow and after that it might be ”as good as master” but with potential regressions. So it’d be great with help finding those so I can merge into master as soon as possible. Not a good feeling to have a major rewrite in a feature branch. I want to stabilize a bit so it’s easier to let others in. Thing is, this was my first ever coffeescript and code quality kindof sucks :)
Jeff Wilde
@jeffwilde
Dec 03 2015 23:00
I have a feeling that coffeescript code quality in general kinda sucks. :o
btw @hedefalk, If you point me to where in the code the important bits are for the implicits underlining, I might take a hapless stab at the error underlining, or at least be prepared to work a PR for after you get your feature branch merged.
Viktor Hedefalk
@hedefalk
Dec 03 2015 23:09
@jeffwilde Sure!
I think I might have started on it already somewhere… Thing I want to do is create a ”messageCentral” per ensime instance which is getting the stuff from server. And when listening to active text editor you do a lookup to get your instance and then you ask for this file’s errors and warnings to paint it out.
Jeff Wilde
@jeffwilde
Dec 03 2015 23:17
Ah ok, so you’re filtering what you need for the current view from a master collection held in messageCentral for the relevant ensime server connection.
Viktor Hedefalk
@hedefalk
Dec 03 2015 23:17
Exactly!
I’m thinking this is my next stop after just having multiple servers working at all.
Jeff Wilde
@jeffwilde
Dec 03 2015 23:18
yeah, that sounds like the right architecture to move towards.
Viktor Hedefalk
@hedefalk
Dec 03 2015 23:21
I just realized I don’t want to use classes at all in coffescript :) The whole atom API is full of them. I just went with it, but I always mess up that ”this” reference of js. coffescript adds some nice things like @ and => to make it easier, but the underlying problem is still there. I think the best way is to just use functions for everything and never ever use ”this”.
Tomorrow maybe :)
Jeff Wilde
@jeffwilde
Dec 03 2015 23:22
first that, tomorrow this!
Viktor Hedefalk
@hedefalk
Dec 03 2015 23:24
:)
Oh, tomorrow is today already in Sweden, gotta sleep.
Jeff Wilde
@jeffwilde
Dec 03 2015 23:25
ha