So apparently there are two editors inspired by vim, but built from the ground up (as opposed to neovim, a vim fork that seeks to improve on top of vim).

I’ve heard of Helix several times prior, but it never quite attracted me. Seemed like vim, but different key bindings and much worse plugin system. It also has different visual and normal modes than vim, but it didn’t quite click with me. I do like it’s multi-cursor ability though.

Then it turns out that Helix was also inspired by not just vim, but also kakoune. Kakoune also has different keybindings, and different modes, but its different modes make sense to me. It fuses visual and normal mode into one. Your normal mode is for both navigation and selection.

Kakoune promotes the idea that you should visually see the text you’re operating on before running the command. You know how in vim, “dd” deletes a line, “dw” deletes a word, and “d$” deletes to the end of the line? In vim, you don’t see what you’re deleting before its gone (which is fine and works for many). In kakoune, the selection happens first before the action. So you select the word or the line, and then you delete.

But what I found to be Kakoune’s killer feature was its shell integration. Kakoune seemlessly integrates into the unix shell, allowing you to offload many tasks to it. For example, instead of it having a built-in sort command, you use the unix sort command to sort your lines.

I’m surprised kakoune isn’t more popular. Yes, it is still in a much earlier phase than vim, and the ecosystem is far less mature, but I am surprised to see Helix gaining more traction.

I’m still very new to kakoune and exploring it. But I like it a lot so far.

    • Cyclohexane@lemmy.mlOPM
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      I’ve wanted to try emacs but have been afraid to do so. I like that emacs basically replaces your terminal and just has a semi-OS inside. But I heard the performance is lacking. What do you think?

      • Bugamn@lemm.ee
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 year ago

        I’ve been using emacs with evil for a while and performance is fine when running it in client-server mode. Vim might be faster opening files on my computer, but if I had as many plugins for vim as I have for emacs, it would likely be as slow, and it’s client-server mode wasn’t as good when I switched.

      • Gilgamesh@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        1 year ago

        Another (new) Emacs user here, I managed to reduce Emacs startup time to 0.6s - 0.5s on my garbage hardware. Some Emacs users have even manages to reduce the startup time to 0.3 - 0.2 seconds!

        Also, launching Emacs in --daemon mode makes creating new frames instantanous and because of it you won’t experience any form of lag when using Emacs!

      • Euphoma@lemmy.ml
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        Yeah performance isn’t that great, its single threaded so if a task is taking a while all of emacs is frozen. It usually isn’t terrible though and is better than VS Code, and the text editing part is faster than VS Code on large text files anyways.

  • PseudoSpock@lemmy.dbzer0.com
    link
    fedilink
    arrow-up
    3
    ·
    1 year ago

    The “joe” editor. It’s default mode is to emulate WordStar. It can also emulate pico, and emacs. Loved this editor before learning, and even for a while after, learning vi/vim.

  • AlmightySnoo 🐢🇮🇱🇺🇦@lemmy.world
    link
    fedilink
    arrow-up
    3
    ·
    edit-2
    1 year ago

    For those who have tried Kakoune, once you’ve included things like Treesitter and the clangd language server, which one feels faster, Kakoune or Neovim?

    I’m still a Neovim main but one thing that I find interesting in Kakoune is their “client/server architecture” which apparently allows you to have one master Kakoune instance and multiple slave instances that would be in sync, kind of like how you can have multiple windows in any modern IDE (I’m not sure if Kakoune shares the clipboard with all of those instances?). That thing is still not available in Neovim (or Vim for that matter), which is a pain in multi-screen setups.

    • lelgenio@lemmy.ml
      link
      fedilink
      arrow-up
      4
      ·
      1 year ago

      Long-ish time Kakoune user here.

      For those who have tried Kakoune, once you’ve included things like Treesitter and the clangd language server, which one feels faster, Kakoune or Neovim?

      I never felt the need to install something like Treesitter because I feel selection-based editing is already powerful enough, if that gives you an idea of how much faster I am with Kakoune compared to Neovim. Maybe I just don’t know everything Treesitter can do 🤔

      which apparently allows you to have one master Kakoune instance and multiple slave instances that would be in sync

      It’s not a master/slave setup, it really is client/server, even the first instance of kakoune that you open will be a client that you can close without the other instances going down with it.

      I’m not sure if Kakoune shares the clipboard with all of those instances?

      Yup, all shared: registers, buffers, marks, hooks. (You can choose not to share stuff between clients)

        • lelgenio@lemmy.ml
          link
          fedilink
          arrow-up
          1
          arrow-down
          1
          ·
          1 year ago

          ☝️ 🤓 If by master/slave you mean “A system in which the master node is responsible to do everything a slave does plus coordinate slaves”
          and by client/server you mean “A system in which a server is responsible only for coordinating clients”.
          I don’t think so, because the first window is not special, it just spawns a server if none is assigned.

    • Cyclohexane@lemmy.mlOPM
      link
      fedilink
      arrow-up
      3
      ·
      1 year ago

      I haven’t tried this yet, so I can’t answer on Kakoune, but it was something that bothered me in neovim. I use a tiling window manager, and like having the editor tiles be managed by the tiling app. I’ll try that out sometime

      • I just tried it right now, you create a session when opening your file the first time kak file.cpp -s name_of_your_session, and then on the other windows you connect to that session with kak -c name_of_your_session. It really works, they share the same buffer and copy-pasting works just fine.

  • Drito@sh.itjust.works
    link
    fedilink
    arrow-up
    3
    ·
    1 year ago

    The road blocks I encountered on Kak are, copy paste from other applications, remembering the mode I’m in (like the other modal editors), the language for config and plugins, removing clippy. Finally I was back on Howl but I admit, Kakoune was mind-blowing.

  • Presi300@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I like micro, it’s a text editor, nothing less, nothing much and while I can’t see myself doing any actual programming on it, it’s nice for editing configs and simple scripts