Just to share the wonderful experience that helix brings inlay hints out of the box

Three steps:

  • :config-open to open the global config toml file
  • add display-inlay-hints in [editor.lsp] section
[editor.lsp]
display-inlay-hints = true
  • :config-reload to make it into effect (or restart helix)

That's it. Thanks, helix! It's a hard work. :heart:

BTW I mainly use neovim, the basic inlay hints PR for neovim was merged last month and the functionality is promisingly on 0.10 roadmap.

3 Likes

Any idea how hard it would be to run helix on Chrome/wasm32 (assuming a virtual/fake file system is provided)? It'd be an amazing editor for a WebIDE.

Just tried compiling helix to wasm32-wasi which is likely the easiest path towards running it in the browser. I found the following issues:

  • Gitoxide doesn't support wasm32-wasi yet: WASM support · Issue #463 · Byron/gitoxide · GitHub (--no-default-features disables git integration)
  • Tree sitter doesn't support wasm32-wasi.
  • Crossterm doesn't support wasm32-wasi.
  • which doesn't support wasm32-wasi.
  • helix-lsp and helix-dap can't work in wasm32-wasi due to the lack of spawning processes.
  • Tokio doesn't support all features used by helix on wasm32-wasi.
3 Likes

So far, I've twice managed to get multi-threaded Rust to run in Chrome/browser via webworker + postMessage (luckily both times they were just using channels and not actually sharing memory like Arc<Mutex<..>>).

Now idea how difficult the other tasks are. In your opinion, is this worth even trying or would I be better off looking for another editor-like that compiles to Chrome/wasm32 ?

I have no idea how much helix is tied to crossterm and especially tokio. You could try asking the helix devs about this, but otherwise I wouldn't recommend trying unless you have a fair bit of spare time.

This topic was automatically closed 90 days after the last reply. We invite you to open a new topic if you have further questions or comments.