Lapce Editor, Release v0.2.0

  • Lapce dev here. Thanks for posting this.

    One thing I would like to highlight about the WASI based plugin system is that, on this release we’ve finalised our API design. We call it "Plugin Server Protocol", which includes everything that LSP has and extends it with more stuff that a code editor needs. We hope that "Plugin Server Protocol" can evolve into something great that future code editors can use. It will be win-win-win for editor authors, plugin writers, and users. New editors don't need to start from zero for plugins. Plugin writers write once to support all editors that are compatible with this API. Users have more plugins to choose from.

  • This is a project I'm really excited for. It seems like it has a chance of potentially replacing Sublime Text for me some day, which is something I've been trying to do for a while with zero success.

    I worry about the plugin system though. It is using WASI for plugins, so people can use any programming language they want. That seems like it could lead to a horribly fragmented ecosystem. It also means plugins are limited to accessing only the system resources exposed by the WASI runtime, which may make sense for security in, say, a web browser, but for an extensible editor it just feels like an unnecessary obstacle.

    IMO, any application for editing/powerusers with a plugin system should be using Python exclusively. Not only is Python available everywhere (and often preinstalled), but it has the richest ecosystem out there that supports the most varied domains. And in the rare cases where a plugin does need to do some number crunching that's too slow in Python, it can be implemented with CFFI using C or any language that can expose a compatible C interface.

    Also, the typical systems programming stuff you'd likely need to do in a code editor/IDE plugin are extremely easy to do in Python using nothing more than the standard library. Imagine trying to maintain a set of plugins all using different programming languages and build systems and package managers. That's a maintenance nightmare.

  • How does Lapce compare to Helix, also written in Rust, is modal like Vim, has a built in LSP with sane defaults, etc?

    https://github.com/helix-editor/helix

  • I tried it on Windows 11.

    - Startup is fast.

    - Memory usage is a bit high (133MB with no files open)

    - CPU and GPU usage on idle is weird (25% and 40%) doing nothing, the window is not even displayed...

    That's unfortunate, that is a pass for now...

  • How have you been finding Druid? I think it's a difficult start for a lot of people because how often it's changing (and how Xilem may fundamentally change it again in the future). I had a similar issue with iced. Rust GUI is in a weird state right now with no strong options unless you go WebRender or something like Tauri.

  • Can I please have something as extensible as Emacs with real multi-threading and modern architecture? I wonder, is that too much to ask?

  • This is what i've been searching for, for ages - Lightweight - Has necessary features - Has a nice UI - Actively maintained - Small learning curve - Not much config required

    It only supports 3 languages :(