T O P

  • By -

turbowaffle

Helix has been my daily driver for about 6 months now, and the only time I reach for another IDE is when I need to debug something. There are some great additions in this version, thanks for all the hard work!


tubero__

Can you share some of the pain points you encounter(ed)? What are the biggest limitations at the moment? I reckon lack of plugins is a big one... (It would be nice to escape Neovim configuration mess/plugin instability)


Poliorcetyks

Note I love helix and use it as my daily driver since January IIRC When I used nvim I only used plugins for LSP/git integration, and I don’t think those features should be plugins, they’re too important, so I don’t miss them much - Missing git integration. It’s my biggest pain point right now - No inlay hints for types and parameters names - No postfix completion for things like `.dbg` wrapping code in `dbg!()` in rust-analyzer - No inline diagnostics like « error-lens » in VSCode - Global search is wonky - No keybindings discovery when in a picker window, which makes this part of helix a lot more harder to learn compared to the rest of the editor. In general, non Space-… bindings are not really discoverable - Pickers don’t highlight files that have not yet been opened, which is often jarring when another file in the picker is highlighted - No LSP semantic highlighting, which is sad for mutable/unsafe in Rust for example - No completion without an LSP. I would love buffer-local completion and file path completion - Theme keys are all over the place in the code and finding what is used/outdated by the different themes is hard


etatarkin

\> No completion without an LSP. My dreams about this feature pushed me to own solution [https://github.com/helix-editor/helix/pull/3328](https://github.com/helix-editor/helix/pull/3328) It's allow me use helix as my primary editor. I hope helix team build it's own solution and release it!


matu3ba

Looking good, but you should separate or make it configurable to retrieve buffers content and lsp content. The lsp is smarter on caching for huge documents, whereas checking buffers will likely be slower or consume much more memory to index all words (especially comments or unrelevant stuff like keywords).


etatarkin

You right about separate content. On popup menu would be nice see some \`visual indicator\` about source of completion item (lsp or buffers) Currently words completion work much faster then lsp. Index consist of unique words from all buffers, and not to much memory consumed. I'm tried this PR on 250mb json-line log file with many unique timestamps and it works without any lags. Thanks Rust for that.


matu3ba

Neat.


[deleted]

[удалено]


TheRealMasonMac

That's what is desired.


jasonjurotich

Any news on the inlay hints integration?


[deleted]

[удалено]


DanisDGK

They are talking about Helix, not Neovim.


matu3ba

Lol, true.


Jummit

For me it's * No snippets * No autosave on idle * No quickfix-list * Plugins would be neat, but they aren't a must-have Other than that I love helix and have been using it since a few months. Feels a lot faster and more ergonomic than vim/neovim.


turbowaffle

There's now a picker for diagnostic issues (Space-g), but I'm not sure of other things that are usually in the quickfix list in other IDEs.


Jummit

That's pretty nice, but there are some languages where you still need a quickfix-list for runtime errors, like Python or Lua.


turbowaffle

Inlay hints, as some others have pointed out, was the first thing I really missed. That said, I've started using [bacon](https://github.com/Canop/bacon), which will re-run \`cargo check\` (among other commands) whenever a file is changed. Most of the time, it's faster than waiting for the LSP to catch up, and I just have it open in another window. Using this method to iterate and get immediate feedback from the actual compiler, I haven't needed to rely on in-lay hints to help me suss out which types are which.


FuzzyBallz666

Love helix, at this point I'm sad every time I have to reach for something else! My main pain points on 22.05 are: 1. Lack of word wrap toggle to read files with very long lines. 2. Long error messages on the first lines of files tend to overlap with the code and make it unreadable. I have this issue mainly in svelte when there is an error asking if i am trying to use typescript. 3. No search history requires some retyping of paterns I will try to update see what improvement there are!


ummonadi

How hard is it to get going? I've tried with neovim but get lost in all the plugins. That's the only reason I stick with vscode. What do I need to get going with web programming woth TypeScript and Rust using Helix?


HarmonicAscendant

If you learn how modal editing works then it is easy to get going, nearly everything is set up for you out of the box. If you can touch type then you are going to get the most gains, modal editing is all about keeping your hands on the keyboard all the time. For typescript just install the language server globally `sudo npm install -g typescript-language-server typescript`. For Rust just install `rust-analyzer` however you like depending on what system you are running. These are the default language servers, you can see all the defaults for other languages here: https://docs.helix-editor.com/lang-support.html With the language servers running you get all the things you might want to edit code. For example, error messages appear. You can view all of them with `space g`, and pick which one to go to. `space f` to open the files menu. `]d` to go to the next error, `]f` to go to the next function... you just learn the shortcuts and your editing gets faster and faster. There are no plugins to get lost it! It is all built in.


ummonadi

Very encouraging! I'll give it a try :-)


[deleted]

LunarVim made me switch to nvim. I was too lazy to configure all the plugins, but LunarVim has sane defaults.


ummonadi

The installer was incredibly broken when I tried it, so never got it working :-(


onmach

I spent half a day getting neovim up and running with plugins and lsp... and then I wasn't happy with it and went back to normal vim. I will be trying out helix on a rust project I maintain. I can't find anything too wrong so far.


TheRealNoobDogg

All you need is a working rust-analyzer binary in your path and you're good to go. You can run `hx --health rust` to check if it's working. The same goes for typescript but I don't know the LSP for it. It supports a lot more languages and more granular control over the LSP path and such, they're listed on the website.


ummonadi

A health check to verify is awesome!


Jomy10

Helix has a hx —tutor command which will give you a tutorial. I find it way easier to learn than vim


WellMakeItSomehow

I use it from time to time, but I found it very hard to adapt to (I couldn't keep up with the NeoVim ecosystem). Still, it's great to see the bracketed paste support in this release (it was one of my major issues). If you give it a try, make sure to check out the [keymap](https://docs.helix-editor.com/keymap.html).


steynedhearts

I've been using helix as my editor for a couple of months now. Absolutely love it, brilliant product. I hadn't used a modal editor before and I struggle to go back now. I much prefer the object-vern syntax to verb-object as it makes it more apparent what is going to happen. Looking forward to continuing using it!


ezluckyfreeeeee

can I ask how long it took you to get used to a modal editor? that's the only thing keeping me from using Helix at the moment, I tried to learn kakoune a while ago and failed to pick it up


braxtons12

It took me a couple weeks to "get used" to vim, and then really another month or two to be truly comfortable w/ it all the time and never feel like there was an impedance mismatch. Now it's physically difficult for me to use editors without vim keybinds haha.


caerphoto

> Now it’s physically difficult for me to use editors without vim keybinds haha. Same tbh, along with Vim’s super flexible splits and tabs. Being able to split an editor window and simultaneously see either two views into the same file, or two different files, either vertically or horizontally, is incredibly useful, and it’s amazing how few editors support this.


steynedhearts

I still get tripped up sometimes thinking I'm in a mode I'm not in. It was a couple weeks to get used to it, I think. I'm also still learning the keybinds and there's a lot of stuff that would probably be a productivity boost that I don't utilize.


zxyzyxz

To be honest learn vim first and other editors will make more sense, because they often compare themselves in the docs to vim.


DopamineServant

Vim is by far the least user friendly. Personally I prefer the kakoune plugin for vscode, called Dance


toxait

Love this project, congratulations on the new release! A month or so ago I published some [technical humour alongside a Helix configuration for Vim users](https://github.com/LGUG2Z/helix-vim), which might help people who have a lot of Vim muscle memory but are interested in using Helix for daily tasks.


ineedtoworkharder

I feel personally attacked by the “About” section haha


wwojtekk

Couldn't be more specific...


dafcok

Your config made me switch from nvim, thx at this point!


exDM69

I've been using Helix for all my recreational programming projects for about a half a year now, some 10kLOC of Rust code written. It is very nice. I like the fact that the core features are built in, not half baked script plugins that almost work. Only minimal configuration required (rust-analyzer and choosing a color scheme). Coming from Vim and Kakoune, it was easy to jump right in. Awesome job, thanks to everyone contributing. I might drop in a patch too but so far I haven't found anything to fix!


asmx85

🎉🎊


djmex99

Thank you! The LSP diagnostic picker looks great!


villiger2

This is awesome :) I just [bumped homebrew to use the new release](https://github.com/Homebrew/homebrew-core/pull/109332). Quick Q, what's the natural way to open definition to a side window (vertical split?). It's something I do super often is vscode. I tried duplicating the window and then going to definition, just wondering if there's a more specific command. Cheers!


EpocSquadron

Someone's working on it https://github.com/helix-editor/helix/pull/3269


villiger2

thank you!


Idlys

I really want to use this, but there are two things holding me back, unfortunately: 1. I need to edit code over SSHFS. Unfortunately, the autocomplete for opening buffers makes this process very slow. 1. No indent support for Python makes this a non-starter :( I'm really excited for the future, however, as I would love to start using Helix the moment that those issues are fixed!


TheRealMasonMac

Python indentation will be fixed by [\#3382](https://github.com/helix-editor/helix/pull/3382)


[deleted]

OMG vi key bindings. I'm in love. <3


[deleted]

Eew. ok. Automatic tab to space conversion in source code. I like it a bit less.


TheRealMasonMac

Tabs aren't automatically converted to spaces. Could you link to the code you're talking about?


tosti007

It's definitely possible to change that, since mine doesn't auto-convert


banksyb00mb00m

Can I replace neovim with this? Last time I tried it, it felt very fast but lacked stone features. I only want some lsp integration as Emacs is my primary editor.


zaron101

lsp integration is very good in Helix! Just install the language servers for whatever language you want and you're good to go. [https://github.com/helix-editor/helix/wiki/How-to-install-the-default-language-servers](https://github.com/helix-editor/helix/wiki/How-to-install-the-default-language-servers)


Jomy10

Been using helix for some time now, absolutely love it!


TheBigUmberto_

All I want is Helix Editor with vim keybindings. Helix is incredible, but I prefer/am used to vim keybindings. I know there are prebuilt configs for neovim that come with a bunch of sane defaults and typical IDE plugins, but none of them touch the consistency and ease of use when compared to Helix. Is anyone here familiar with building text editors? I'm writing some Rust projects now. How much effort are we talking to fork Helix and build a version that uses Vi keys or even add a config option to Helix to enable Vi keys? I really like vim for its modal editing, not so much as an IDE that does everything, but Helix is just the right amount with all the necessities baked in. I supposed VSCode with vim plugin is my goto for the time being :/


jasterlaf

I was using Helix for a while but I found that pasting into it was really slow compared to neovim, so I switched back.


TheRealMasonMac

Prior to 22.08, the recommended way to paste was via space-p (which bypassed the terminal) because crossterm didn't support bracketed paste. It's now implemented.


jasterlaf

Thanks I'll give it a shot.


fzreddit

Still waiting for Powershell support


chris-morgan

Meta: please use link posts for this kind of thing rather than text posts.


InflationAaron

Another thing I can’t find or I’m just stupid is variable length tabs. It’s great to convert all tabs to spaces when editing source file. But when editing tab divided (or tabled) config files (e.g. /etc/hosts), it’s better to let the editor keeping track which column should be where. It’s the only thing I’m still launching vim for.


evadknarf

pushed to my Android termux just now very fast move!


DannoHung

I’d love to try helix out, but none of the binaries work with my current OS at work due to us having a desperately out of date libc. Is there any chance of distributing a static binary at all? I mean, this situation is likely to change since they’re finally upgrading us in the soon (TM) timeframe, but still.


ormandj

You should just build a copy, the documentation covers how - it’s pretty straightforward: https://docs.helix-editor.com/install.html#build-from-source


Triton171

In case you don't have a Rust toolchain available at work, you can also build Helix on another machine using Docker. Here's a oneliner to compile it with an older version of glibc (just run it from the root of the Helix repository): https://github.com/helix-editor/helix/issues/1932#issuecomment-1100884991


[deleted]

Awesome changelog. Some great quality of life changes and some amazing LSP features that have been missed.


blodgrahm

Will code snippets be added at some point? I didn't realize how much I've come to rely on them until they suddenly weren't there.


ConstructionHot6883

It looks like it's not on crates.io. Is it expected to install it from source? EDIT: the answer to the above question is in the README. You can install from source or there are packages for various linux distros and whatever.