NeoVim Event Highlighting + custom keybindings

I had a major success after some weeks of work to enhance the event highlighting! I really would like to receive some feedback, before I merge this to main. Please provide me some feedback in this thread: Improve event highlighting by using Tidals PlayState · Issue #14 · thgrund/tidal.nvim · GitHub

Please try out the event highlighting with the tidal playstate (it's reliable, it's fast, it performs well and it will allow us at least strudel like pattern visualization! yeah! :slight_smile: → I run the highlights with up to 120fps without big issues on my machine). This works, because I receive the Tidal playstate with all time and event informations from stdout. I can calculate the events beforehand. All other methods used the the current state within a specific time and this live edge approach was hard to stabilize.

In the basic form you just need to add this in your tidal.nvim file:

return {
  "thgrund/tidal.nvim",
  branch = "improve-event-highlighting",
  opts = {},
  -- Recommended: Install TreeSitter parsers for Haskell and SuperCollider
  dependencies = {
    "nvim-treesitter/nvim-treesitter",
    opts = { ensure_installed = { "haskell", "supercollider" } },
  },
}

If you use your own BootTidal.hs, then you need to define a clock target like this:

let clockShape = OSC "/ping" $ Named {requiredArgs = ["clock"]}
let clockTarget = Target {oName = "clock", oAddress = "127.0.0.1", oPort = 6013, oLatency = ((3/10)), oSchedule = Live, oWindow = Nothing, oHandshake = False, oBusPort = Nothing }

tidalInst <- mkTidalWith [(superdirtTarget { oLatency = (0.15) }, [superdirtShape]), (clockTarget, [clockShape])] (defaultConfig {cFrameTimespan = 1/50, cProcessAhead = 3/10})

Otherwise the inbuild BootTidal is correctly pre configured.

1 Like