ForwardWidgets
Widgets for Douban and Trakt watchlists plus personalized recommendations, live TV streaming including PlutoTV, Yatu ra…
Love2D LSP (VS Code / Neovim / Zed / etc.) extension for live coding and live variable tracking
git clone https://github.com/jasonjmcghee/livelove.gitjasonjmcghee/livelovePlease feel free to file any issues you have. Note this does not have LÖVE 2D definitions, but you can get some there.
A LÖVE 2D VSCode extension in the form of an LSP server, and a few files to add to your project to enable live coding, and live feedback.
Note: I also added a neovim plugin and a zed plugin, if you'd prefer them over vs code. They do not support the live number slider and live color palette features, but do support live coding and live feedback.
"Live coding" here means, when you change the code, you'll see the changes reflected instantly / as you type them. If there are errors, it'll use the last valid code.
"Live feedback" here means, you'll see every value of variables you created, updated live, next to any reference to it (as an inlay hint). Any variable prefixed with _ like _foo will not be tracked. You can disable this entirely with live_vars = false at the top of livelove.lua.
cd into the folder and run npm run install) (similar for zed)..lua files other than main.lua to your project (color.lua is optional).main.lua after installing the extension, it will automatically start the LSP. Then, just run the project / main.lua, and you should see inlay hints in the editor. Edit your file and see the changes instantly (glsl shaders work too)!There are a few additional features included. You can select a hex color string or a number, then click once on it. It'll pop up a slider / color palette (click to modify) you can use to edit the values using a good UX, live.
I've included main.lua to provide an example of how to use it.
But, here's a template:
if not IMAIN then
livelove = require("livelove")
-- Add state that you want to persist across hot reload here (probably most everything)
-- You'll want something like this in every file, but choose a unique variable each time.
IMAIN = true
end
local function hotreload()
-- (optional) whatever you want here (fires any time there's a hot reload)
end
livelove.postswap = function(f)
hotreload()
end
function love.update(dt)
livelove.instantupdate()
-- whatever you want here
end
function love.draw()
-- whatever you want here
livelove.postdraw()
end
more like this
Widgets for Douban and Trakt watchlists plus personalized recommendations, live TV streaming including PlutoTV, Yatu ra…
Vim/Neovim debugger plugin providing a terminal interface to the Debug Adapter Protocol
search projects, people, and tags