• Gram and flow(-gui) are the two editors that are “new” that I’ve been enjoying very much whenever I try them out. Both don’t have an extension something[0] (yet!), so it’ll be interesting to see what kind of approach they’ll take. Both have the amp jump feature that I really enjoy using because it made me stop spamming jjjjjjjklll.

    [0]: yes Zed/Gram have an extension system, but I think it’s so specific to LS/tree-sitter/themes that I don’t know what to think of it. Such a cool buffer system and I can’t pipe any data to/from other sources!


    score 1 · canonical

    • At least in the case of Gram, a better extension system is something we’re thinking about! It’ll probably take a while, but it would be cool to let extensions do more than just provide language server commands and tree-sitter grammars.


      score 2 · canonical

      • it would be cool to let extensions do more than just provide language server commands and tree-sitter grammars.

        I think so too! It’ll be interesting to see what the maintainers are settling on when the time is right(no rush from me :P).

        Some questions that pop up when thinking about the design:

        • will it still be WASM based?
        • will it be Rust or something more script-y like Lisp or Lua.
        • will it be able to modify (little|medium|a lot) of the state of the text editor?

        Not asking for answers here, but it is fun to philosophize about it.


        score 2 · canonical

        • So what I personally have been looking into, and what we’ve very loosely agreed is an interesting direction in the XMPP chat, is to integrate Lua. I have an experimental branch where extensions can provide an LSP command through a Lua script rather than Rust code, and that does work. But replacing current functionality with Lua is a tiny amount of work compared to exposing actual new and interesting functionality to Lua.


          score 1 · canonical

  • I switched to Gram when the 1.0 came out and it’s such a nice project. I enjoy the editor a lot (especially compared to my neovim setup at the time which was succumbing more and more to entropy), and contributing to it has since become a bit of a hobby project. I really enjoy its focus on code quality and reducing complexity rather than constantly pushing for more and more features.

    For this release, I landed a change which just gives you a command to download and install the server binary via ssh if you’re trying to do remote editing against a host without a server in the right place, and I rewrote the protocol to use postcard instead of protobuf (for significant complexity and compile time wins). Compared to mega projects like VS Code and Zed, it feels like my contributions actually matter since it’s a small team; and my work enriches the community rather than some company.

    It’s empowering for your tools to be small projects which you can take part in moulding. And it helps that the community is nice.


    score 2 · canonical

  • Side by side view for Git diffs

    Now I’m terribly interested… One of the reasons I’m still so addicted to VSCode is the Git extension. It’s definitely not perfect but it’s really good and intuitive for what I do. I’m going to give Gram another try later when I have time!


    score 1 · canonical