Code Monkey home page Code Monkey logo

Comments (13)

rktjmp avatar rktjmp commented on June 7, 2024 1

I deleted that comment as I'm not tooooo sure how related they really are. That other issue was to do with re-evaluating macros repeatedly where as this seems to happen on the first call.

from hotpot.nvim.

datwaft avatar datwaft commented on June 7, 2024

After a test this seems to be an issue with Fennel itself, so I will open a new issue on the Fennel repository.

from hotpot.nvim.

datwaft avatar datwaft commented on June 7, 2024

Here is the issue on the Fennel repository: bakpakin/Fennel#425

from hotpot.nvim.

rktjmp avatar rktjmp commented on June 7, 2024

https://todo.sr.ht/~technomancy/fennel/110 Related

from hotpot.nvim.

datwaft avatar datwaft commented on June 7, 2024

https://todo.sr.ht/~technomancy/fennel/110 Related

Thanks! I will link it on the issue in the Fennel repository

from hotpot.nvim.

datwaft avatar datwaft commented on June 7, 2024

Nvm, you already linked it. Thanks!

from hotpot.nvim.

rktjmp avatar rktjmp commented on June 7, 2024

Gonna close this out as it's upstream and any fix will come through via (hopefully) the next Fennel release.

If a fix lands and you want to run a custom build before any release, you just have to replace lua/hotpot/fennel.lua with your own build and apply a tiny patch as shown here: a1b2775 (Edit: actually you also have to bump the internal plugin version or fennel will complain, and then have to rebuild Hotpot.)

Feel free to ping for help or if a new release happens and I don't notice.

from hotpot.nvim.

datwaft avatar datwaft commented on June 7, 2024

Thanks!

from hotpot.nvim.

datwaft avatar datwaft commented on June 7, 2024

Quick question related to this: does hotpot have any way to specify which version of Fennel to use?

The fix for this is already merged into the Fennel repo, but I can't use it yet with Hotpot.

from hotpot.nvim.

rktjmp avatar rktjmp commented on June 7, 2024

(assuming non-nix env):

  1. Build your own fennel.lua file
  2. Drop it into lua/hotpot/fennel.lua
  3. Edit lua/hotpot/fennel.lua and replicate this patch a1b2775, the line numbers wont be the same but the surrounding context should be easy to find, it's inside SPECIALS["require-macros"] = function....
  4. Edit lua/hotpot/searcher/module.lua and find versions = {"1.1.1"} and replace it with versions = {"1.2.0"}

I have actually been thinking it would be nice to have a branch that automatically tracks fennel-head, so I will probably try rigging some CI for that some time.

Alternatively you can clone, update deps/fennel.lua link, patch the file, run build.sh watch, patch the version in the fennel and adjust your nvim plugin stuff to use your local clone. Probably no harder just to patch the first way though.

Possibly there could be a way to set a global flag before hotpot loads to instruct it to get fennel from not hotpot.fennel but you'd get compiler warnings because of the plugin version mismatch - you'd still have to go patch the searcher anyway - and I think 99% of the time people wouldn't need it (esp if there were an actual HEAD branch).

from hotpot.nvim.

datwaft avatar datwaft commented on June 7, 2024

Thank you!

from hotpot.nvim.

rktjmp avatar rktjmp commented on June 7, 2024

Theoretically you can now track the nightly branch which theoretically should incorporate the latest upstream fennel each day (if there are any changes to merge).

The original idea was to run the test suite against any upcoming releases, you should be fine to just point your plugin manager at it but I can't promise I wont delete & recreate or rename the branch at some point. So I guess lock that fact away in your brain in case something explodes one day.

from hotpot.nvim.

datwaft avatar datwaft commented on June 7, 2024

Thank you! No problem with that, at least there is a way to manually patch it.

from hotpot.nvim.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.