25 ms·
> crashes: every week or so there’s a segfault and the editor crashes. ... This doesn’t bother me that much though, I can just reopen it. Strange approach to d
by eviks 1y ago
> crashes: every week or so there’s a segfault and the editor crashes. ... This doesn’t bother me that much though, I can just reopen it.
Strange approach to data loss, since it doesn't have persistent undo, you can't just reopen it to the same editing state?
> After using Vim/Neovim for 20 years, I’ve tried both “build my own custom configuration from scratch” and “use someone else’s pre-buld configuration system” and even though I love Vim I was excited about having things just work without having to work on my configuration at all.
I don't really get it given how primitive the resulting Helix config is (I mean, even the most frequent commands are based off the mistaken unergonomic w/b defaults), presumably you would've been able to replicate it comletely in the first X years of using vim, and then there is no hell anymore?
> little help popup telling me places I can go. I really appreciate this because I don’t often use the “go to definition” or “go to reference” feature and I often forget the keyboard shortcut.
Exactly! Pity this basic contextual help isn't more widespread, every single app that uses a lot of keybind sequences could benefit from it, especially if it becomes a bit smarter and only shows a popup if you don't finish the sequence right away
- tasn 1y ago> Exactly! Pity this basic contextual help isn't more widespread, every single app that uses a lot of keybind sequences could benefit from it, especially if it becomes a bit smarter and only shows a popup if you don't finish the sequence right away I've been using Vim/Neovim for 20 years, but still can't get enough of which-key[1] which I only installed ~6 months ago. 1: https://github.com/folke/which-key.nvim https://github.com/folke/which-key.nvim
- deleted 1y ago[deleted]
- eikenberry 1y agomini.clue is another good option for this feature in neovim. https://github.com/nvim-mini/mini.clue https://github.com/nvim-mini/mini.clue
- sundarurfriend 1y agoThe mini set of modules are such a treasure, Evgeni is amazing.
- eviks 1y agoYeah, that's the mortal sin of vim - insisting on shitty unergonomic defaults, requiring every new user waste time recreating a better UI while suffering for years before even the appropriate knowledge is acquired
- eimrine 1y agoI have not seen any unergonomic defaults in vim. Check your understanding of vim philosophy probably.
- eviks 1y agoCheck your understanding of ergonomics if you fail to see the obvious
- eulgro 1y agoCan you give at least a few examples? I have no understanding of ergonomics it seems
- seanhunter 1y agoThere literally is a plugin [1] containing sensible defaults that everyone in the community agrees would be good as default but “backspace” and “incsearch” are the most obvious. “Backspace” allows you to delete with the backspace key beyond the point where you pressed “insert”. I don’t think I’ve ever met someone who thinks the vim default (not allowing this) is ergonomic. [1] https://github.com/tpope/vim-sensible https://github.com/tpope/vim-sensible
- ratrocket 1y agoI wouldn't argue that the vim default (of not allowing backspace beyond where you entered insert mode) is ergonomic, but I do prefer and exclusively use the default vim behavior. It's just what I'm used to at this point (24 years using vim/nvim) and if I set it the "ergonomic" way, it's disorienting. So, ergonomic or not, some people do prefer the default -- at least one person :).
- zahlman 1y ago> every single app that uses a lot of keybind sequences could benefit from it, especially if it becomes a bit smarter and only shows a popup if you don't finish the sequence right away Counterpoint: the sequence should only have an opportunity to be "unfinished" if there's actually a choice to make. Showing too many choices at once can be overwhelming and in the Vim environment there are usually a ton of choices. Consider for example if I input `n10` in editing mode; that could be followed by all kinds of repeatable actions and it could be followed by another digit of the count.
- eviks 1y ago> if there's actually a choice to make. I don't get it, there is always a choice to make, which is which action to continue with? > Showing too many choices at once can be overwhelming It can't be more overwhelming than having to remember all of those choices and using external docs/configs to look them up! Besides, it's not like there are no improvements possible and you have to show everything at once. For example, all your "all kinds of repetable actions" can be limited by the most frequently used 10 actions and an "others" submenu you could invoke separately if you were looking for something else. And your "another digit" is just a single line "0-9 continue the count", so what's the issue there?
- zahlman 1y ago> I don't get it, there is always a choice to make, which is which action to continue with? The point is that if the input for a command is XY, there had better also be an XZ. Otherwise XY should just be X.
- eviks 1y agoHow is this relevant to the tooltip conversation? If you have XY (without XZ) instead of just X, well, maybe you could simplify, or maybe it still makes sense for you for some reason, whatever, in any case you'd appreciate immediate contextual help if you press X and then forget that Y is the finisher.
- NetMageSCW 1y agoI think you completely missed the context for the configuration issues in vim: I’ve been trying to get a working language server setup (so I can do things like “go to definition”) and getting a setup that feels good in Vim or Neovim just felt like too much work.
- rand0m4r 1y agoIt might have been a bit harder in the past, but with recent versions of neovim (>=0.11) it's less than 20 lines of configuration. I have quite a few keybindings to jump back and forth through errors and the default keybidings already include things like renaming, go to definition or listing references. I'd be more than happy to help you configuring it to your needs.
- neutronicus 1y agoFWIW, in my (emacs, C++) experience, writing the editor config is a relatively minor part of the yak-shaving required to have jump-to-definition on an actual work codebase. I had to get my project to emit compile_commands.json, get clangd, figure out which things about our build process clangd was not understanding from compile_commands.json and add them in .clangd. All to achieve a level of functionality significantly jankier than just opening the damn .sln file in Visual Studio. Once I did all that it was, as you say, very little actual stuff written in my .spacemacs. And probably could have been less if I had felt like figuring out how to get my windows emacs to find clangd on the path instead of giving up and just specifying full paths to everything. I only persevered because emacs (unlike Visual Studio) gives you all the necessary access to its internals to build LLM Tools around its LSP functionality.
- galangalalgol 1y agoWhatever vim is in rhel 8 supports ale. Ale with rust has been great. Go to definition is flawless, all my conpile and clippy errors are underlined as I type and binding a key to ALECodeAction will apply the auto fix if it has one. Usually that is to import whatever I just used, which vscode would do automatically, but still its nice and having vscode use clippy as well as check bogs it down. And ale runs cargo-fmt on save. So yeah, nothing I'd wish different from it. Edit: upon further thought, I don't like having to move my hand to the arrow keys to select from the auto complete list, even if there is only one thing and then hit enter, rather than hitting tab to pick whatever is left.
- jfvinueza 1y agoI've been using Helix daily for about three years, and it has crashed about five times. It is very, very rare for it to SEGFAULT.
- eviks 1y ago> every week or so there’s a segfault and the editor crashes.
- kibwen 1y agoThe author of the OP appears to have edited it to indicate that it's just crashing, and doesn't know if it's a segfault or just a panic. It appears there is some known potential for segfaults in tree-sitter, which is a native C dependency.
- helix278 1y agoI have had treesitter crashes in the past editing markdown, causing helix to segfault, but the particular bug that caused my crashes has been fixed since years.
- simjnd 1y ago> presumably you would've been able to replicate it completely in the first X years of using vim, and then there is no hell anymore? I agree with this, but being able to ssh into a server and just grab Helix instead of copying over my Vim config and whatever else it depends on is really nice. Makes your dev env feel a lot more portable (although also more barebones than a crazy Vim config)
- mi_lk 1y agoIt's not like Helix is as ubiquitous as Vim on a random remote server. If that's not the case surely the effort to install Helix is bigger than copying Vim config?
- kibwen 1y agoI've had trouble in the past with systems whose version of vim is too old to understand the options in my config.
- t_mahmood 1y agoHow is so? I have my dot files in GitHub. I just have to clone, run `PlugInstall` and it's all ready.
- deleted 1y ago[deleted]
- simjnd 1y agoGlad it works for you! My dot files are in a private repo, I don't want to bother with adding new SSH keys to my GitHub account and then remembering to cleanup everything for what could be a one-time use. `apk add helix` is way easier for me.
- q0uaur 1y agothis was my plan, but then i got really into using LSPs and i'm not about to install every LSP on every server i ssh into. Currently i just use sshfs to mount whatever directory i want to work on locally, nice to have all lsps available and also see my changes reflected on the server instantly.
- joemi 1y ago>> little help popup telling me places I can go. I really appreciate this because I don’t often use the “go to definition” or “go to reference” feature and I often forget the keyboard shortcut. > Exactly! Pity this basic contextual help isn't more widespread, every single app that uses a lot of keybind sequences could benefit from it, especially if it becomes a bit smarter and only shows a popup if you don't finish the sequence right away I agree 100%. This would be helpful in so many places. That was my favorite part of the article -- one little paragraph and screenshot, but it made me desperately crave that feature almost everywhere. I agree that it'd need to be smart about it -- after a timeout, as you mentioned, is a great idea. That way it can stay out of your way if you know what you're doing, and only pop up when you hesitate.
- bionsystem 1y agoNeovim with lazy.nvim has that by default (delay included).
- joemi 1y agoI'm not Neovim person, but would you happen to know what plugin provides that feature?
- bionsystem 1y agoSorry I'm exhausted and lazy.nvim is the package manager, but I meant lazyvim which is the distribution. Within this distribution I'm pretty sure it's which-key that provides a popup. If I type <leader> it pops with suggestion (and a little icon in front of each indicating if the next key has sub-commands or not).
- westurner 1y agofolke/which-key.nvim: https://github.com/folke/which-key.nvim https://github.com/folke/which-key.nvim : > Customizable Layouts: choose from classic, modern, and helix presets or customize the window. LazyVim keymaps: https://www.lazyvim.org/keymaps https://www.lazyvim.org/keymaps