Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
    asaadza
    @asaadza
    the search for symbol in IJ is probably one of the only features I still miss
    Ólafur Páll Geirsson
    @olafurpg
    IJ has very slow completions, I regularly press enter before the completions load
    I agree
    the LSP api makes it difficult to implement proper symbol search
    asaadza
    @asaadza
    I thought of another thing that would be good to have in metals, but can't remember it now :)
    Ólafur Páll Geirsson
    @olafurpg
    need to load the exact location for every search result (filename on disk and line number)
    that's like >95% of the overhead
    asaadza
    @asaadza
    have you seen the haskell extension for metals?
    Ólafur Páll Geirsson
    @olafurpg
    o.O
    I have not
    asaadza
    @asaadza
    they recently addedd -- >>> which get executed inline
    not such a big deal though now we have pretty good worksheets in metals
    Ólafur Páll Geirsson
    @olafurpg
    My wish for worksheets is to implement the new notebook API in vscode
    asaadza
    @asaadza
    one thing I don't always predict is when the worksheet execution will get re-triggered
    Ólafur Páll Geirsson
    @olafurpg
    more explicit run/cancel UI for execution
    asaadza
    @asaadza
    right
    Ólafur Páll Geirsson
    @olafurpg
    and would make it possible to provide full IDE support in markdown files
    without hijacking completion in *.md files
    for mdoc code fences
    asaadza
    @asaadza
    that would be a tutorial writer's dream
    Ólafur Páll Geirsson
    @olafurpg
    yup, and it's probably not so difficult to implement. Most of the infrastructure is there
    asaadza
    @asaadza
    one thing I was thinking years ago is that if scalajs was used instead of typescript, you would get more contributions, but I think you were worried about the facades having to change too often
    Ólafur Páll Geirsson
    @olafurpg
    vscode has a few helpful "proposed APIs" for notebooks that would be nice to land in stable, but not blockers really
    I don't think it would make a big difference
    asaadza
    @asaadza
    I keep seeing notebook support gets enhanced, but don't use python
    Ólafur Páll Geirsson
    @olafurpg
    the vscode client is not supposed to implement hardcore logic anyways, it's mostly glue code
    asaadza
    @asaadza
    no doubt, and some presentation
    Ólafur Páll Geirsson
    @olafurpg
    a core principle is that the metals server does the heavy lifting so that the same logic can be reused between editors
    asaadza
    @asaadza
    so, the real answer is that people could jsut contribute to metals, if that were the case!
    Ólafur Páll Geirsson
    @olafurpg
    non-trivial logic still naturally ends up living in the vscode client extension, but you want to limit it
    it takes some practice to add new features that change the server + client
    asaadza
    @asaadza
    was there ever a video or blog post about it?
    Ólafur Páll Geirsson
    @olafurpg
    it's a lot of moving pieces, scala server, lsp4j bindings (and Java reflection-based JSON serialization), and TS client
    this presentation is great https://www.youtube.com/watch?v=fpzN_vTBy18
    asaadza
    @asaadza
    if someone from scala-center could do an end-to-en demo of adding some trivial feature, including the TS bit, it would be at l;east interetsing
    Ólafur Páll Geirsson
    @olafurpg
    I recommend asking folks in the scalameta discord if you have questions
    asaadza
    @asaadza
    ... good, I hadn't seen that.
    Ólafur Páll Geirsson
    @olafurpg
    there's a metals-contributors channel
    asaadza
    @asaadza
    is everybody moving to discord these days?
    Ólafur Páll Geirsson
    @olafurpg
    it's a good idea to have a video of adding a new feature e2e
    cc/ @tgodzik
    I still regularly check gitter, but discord is more usable from mobile so I check it more often
    I'm signing off for now, happy to chat more another time @asaadza Thank you for the nice questions :)
    asaadza
    @asaadza
    ... very nice, good night!
    asaadza
    @asaadza
    ... just so I don't forget (I still use github RO, for now, and I'll put it here since we were already in that ballpark), one thing I often think would make life even easier in vscode is stating where stuff is declared/defined along with the type info on-hover.
    Ólafur Páll Geirsson
    @olafurpg
    That's a good idea, feel free to open a feature request here https://github.com/scalameta/metals-feature-requests
    esp. good if you can include how to format the definition
    asaadza
    @asaadza
    RO as in read-only
    ... btw, re the video you linked to, it is good thanks, and covers quite a lot of stuff I have discovered when I play with scala in vscode, but for people who didn't realise how far you guys have come with this, it should be an eye-opener. I suspect many IJ users, for scala, have no idea how far metals has evolved.