Helix 🧬 the Rust Powered Development Environment

  Рет қаралды 174,229

Code to the Moon

Code to the Moon

Күн бұрын

Пікірлер: 414
@codetothemoon
@codetothemoon 2 жыл бұрын
ERRATA: Around 5:15 I mention that deleting a previous word is easier in Helix because in vim you'd have to do 'bdiw'. But it turns out in vim you can actually just do 'db' to achieve the same thing as 'bd' in Helix! Thanks to Pranav P.A for pointing this out.
@tanzboden
@tanzboden 2 жыл бұрын
Using vim for 25 years now. An in my opinion, the people behind helix made some very good decisions. The philosophy selection>action really makes sense. The editor is a joy to use.
@codetothemoon
@codetothemoon 2 жыл бұрын
Nice, I was pleasantly surprised by it as well. It's great to hear from folks with your experience, as I'm still a vim newbie so my perspective is a bit limited!
@spaceyfounder5040
@spaceyfounder5040 2 жыл бұрын
I'm so tired of vim configuration and plugins. Now it's the right time to bin it. You create such a useful and informative content - it's even hard to describe. Thanks for that and wish you and your channel to grow!🎉
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks so much, I really enjoy hearing things like this :) more to come
@gamcd
@gamcd 2 жыл бұрын
I used helix for a long time and still love so many aspects of it, there were just some annoyance I had that I didn’t know how to fix due to lack of plugin support. It’s still my favorite way of using multiple cursors by far though, and a great project
@codetothemoon
@codetothemoon 2 жыл бұрын
Yeah plugins are going to be huge - totally understand a reluctance to go all in on it before those come. I might be in the same camp - we'll see.
@katech6020
@katech6020 2 жыл бұрын
They are working on plugins support using WASM
@aqilcontractor788
@aqilcontractor788 2 жыл бұрын
I'd try out something called Lite-xl, it honestly almost has the best multicursor support I've ever seen.
@theherk
@theherk 2 жыл бұрын
@@katech6020 Maybe you are correct, but I'm not certain they've settled on wasm, though it is a top contender. There are three open topics anybody interested can check out: #122, #2949, and #3806.
@ExTex23
@ExTex23 2 жыл бұрын
Maybe have a look at the kakoune editor, it inspired the helix selection order. But it has excellent support plugging in other tools.
@MrKeebs
@MrKeebs 2 жыл бұрын
This kind of video is extremely useful. It’s like someone is chewing hard to digest food for you. Seriously, I tried Helix a couple of weeks back but didn’t have the patience to stick to it. This made me want to give it a shot again. Thank you for this and for all the videos you do, they honestly do a lot of difference. Keep it coming and thank you so so much for what you do.
@edgeeffect
@edgeeffect 2 жыл бұрын
If it takes any effort at all to use an editor.... that editor stinks.
@herbertwestiron
@herbertwestiron 2 жыл бұрын
@@edgeeffect yeah good luck living life with that philosphy.
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks so much for the kind words MrKeebs! I love doing these and hope to continue doing so for as long as I can.
@codetothemoon
@codetothemoon 2 жыл бұрын
edgeeffect I think editors should always make a best effort to reduce friction for newcomers, but I think the most productive / ergonomic editors will deliberately trade "beginner friendliness" for said productivity and ergonomics, because in many cases you can't have both.
@pookiepats
@pookiepats Жыл бұрын
@edgeeffect he torched your ass
@Someone-q6f5x
@Someone-q6f5x 2 жыл бұрын
Been using helix for 3 months now and im loving it
@codetothemoon
@codetothemoon 2 жыл бұрын
Nice!
@LongestYardstick
@LongestYardstick 2 жыл бұрын
Appreciate this video getting more visibility on Helix -- I have used it periodically and have a history with Neovim, this editor is insanely good and deserves attention.
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks LongestYardstick! I agree that Helix has massive potential
@nieldrummond1538
@nieldrummond1538 2 жыл бұрын
It's worth mentioning that language support depends a bit on the richness and out-of-the-box useability of the associated LSP - e.g. Rust/Go/Python/Js is amazing, Java/Scala not so much (though I did eventually get Metals working once...).
@codetothemoon
@codetothemoon 2 жыл бұрын
Good point, I may mention this in a pinned comment
@Kiaulen
@Kiaulen 2 жыл бұрын
How is ruby? I've been unimpressed by it in VS Code
@jongxina3595
@jongxina3595 2 жыл бұрын
yeah wish java was better cuz its what I use at work and intellij is just too power hungry
@bunny_the_lifeguard9789
@bunny_the_lifeguard9789 Жыл бұрын
Just rewrite it in Rust xD
@beetledjuice3062
@beetledjuice3062 Жыл бұрын
Thanks for this, Helix needs more people backing it up. It's an absolute joy to use.
@codetothemoon
@codetothemoon Жыл бұрын
thanks for watching! I agree it is fantastic. Personally I'd be using it as my daily driver if it had an evil mode....
@Luxalpa
@Luxalpa 2 жыл бұрын
Was looking for an editor written in Rust mainly because I want something that I can extend later. This one's great, thanks!
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks for watching!
@sufilevy
@sufilevy 2 жыл бұрын
Thank you so much! I wanted to have a non-gui text editor that I could use, but I didn't have the time to learn vim/other editors, this seems like the perfect one!
@codetothemoon
@codetothemoon 2 жыл бұрын
Nice! Yeah I think this might be a good place to start. Internalizing the motions will still take some time but at least you don't have to worry about configuration
@scion911
@scion911 2 жыл бұрын
@@codetothemoon I actually agree with this. I haven't been interested in vim or neovim since the beggining, but I might try this out. This seems very intuitive to me actually after fiddling around with it.
@casualoutlaw540
@casualoutlaw540 2 жыл бұрын
@@scion911 You should try vim some day too! It has a less intuitive act first, highlight later system but has a larger ecosystem and I find it more preferable until helix grows. PS: If you use any app, there's either vim keybinds for it or an alternative based on vim keybinds. It makes the vim experience really worth it.
@scion911
@scion911 2 жыл бұрын
@@casualoutlaw540 I understand your point, I was looking for file tree if it was implemented... Fuzzy search is fine but I like seeing file tree sometimes. Ecosystem is pretty new I guess, and it will take time. I actually tried spacemac before but didn't like the default keybindings. I actually haven't tried neovim in real projects... Just fiddling around, I honestly hate setting up everything, I know there must be ways of pre-configured vim varients but haven't explored it. I am pretty good at doing things without mouse in general gui ide's so I wouldn't want to sink time into configuration of terminal based editors... Do you know any good ways to have it in vim/neovim?
@arcstur
@arcstur Жыл бұрын
​@@scion911I've been using LunarVim for around 6 months and I really like it. Right now I'm considering switching to Helix. Being easy to configure was a really good selling point, and it's blazingly fast for real.
@AceofSpades5757
@AceofSpades5757 2 жыл бұрын
Everything about Helix is blazingly fast. Like actually ridiculously fast. I have huge projects where almost everything is instantly responsive.
@codetothemoon
@codetothemoon 2 жыл бұрын
Nice, I hadn't tried it with a large project yet, it's comforting to know it'll hold up when I throw one at it
@fudgepuppy9683
@fudgepuppy9683 2 жыл бұрын
This is definitely true. Can confirm. Weak computers don't even hold it back. I've seen 1500 loc lagging weak computers on vscode and even a bit of lag with nvim while Helix acts like it's just 15 loc.
@AceofSpades5757
@AceofSpades5757 2 жыл бұрын
@@fudgepuppy9683 I haven't used a particularly weak computer. Good to hear! I assume a potential issue would be running the LSP(s) though. Not to mention installing them. I know rust-analyzer will eat up all my computers resources, so I could see that one being particularly annoying.
@Cookiekeks
@Cookiekeks Жыл бұрын
Same for vim
@9SMTM6
@9SMTM6 2 жыл бұрын
I've configured (like 3 lines so far, as well as installing a bunch of language servers) helix actually just last weekend. While I tested it, I never really committed to Vim long enough to see benefits, and Helix seems a lot harder to misuse, and as you said, it's a lot easier to configure. The only negative thing I've to say so far is that the default theme is IMO ugly and also not very helpful. But they have a bunch of default themes installed (which they should refer to in the documentation, I might create a pull for that) which include some nice and helpful ones.
@codetothemoon
@codetothemoon 2 жыл бұрын
Nice! Yeah I agree the default theme is not something I would actually use, but it sure gives the feeling of "this is something completely different" in the promo material and screenshots. There are a TON of default themes included, I'd be shocked if you didn't find something you like.
@nomadtrails
@nomadtrails 3 ай бұрын
Can confirm, as a first modal editor, Helix is amazing. This video turned me onto it awhile back, and I just wanted to come back and say thanks! I've finally hit my stride with it and it feels incredible. For anyone reading this comment, the reason I say its great intro is because of the little menus that pop up all the time. They dramatically improve the steep learning curve. Goto, Space, and Match modes are amazing! I think NeoVim with some off-the-shelf config could be good, or start with vim motions in vscode, but for me, Helix just did it for me and I'm sticking to it.
@introspecticon
@introspecticon 2 жыл бұрын
This would be more enticing to me if the commands were a strict superset of vim by default
@codetothemoon
@codetothemoon 2 жыл бұрын
Totally understandable - the thing I really struggled with when starting out was x and d - In vim x deletes a character, in Helix it highlights a line...
@adsick_ua
@adsick_ua 2 жыл бұрын
@@codetothemoon I've been arguing with contributors for some time and gave up coz they stick to kakoune editing model too hard and don't seem to leave it.
@dpgwalter
@dpgwalter 2 жыл бұрын
@@adsick_ua They made a decision for a highlight driven editing model at the very start of the project, so it's pretty understandable that they won't change it.
@LuismaLorca
@LuismaLorca 2 жыл бұрын
If I want to change the body of a function I have to mi{c instead of simply ci{. Big nope. It's a shame, it could be great.
@LuismaLorca
@LuismaLorca 2 жыл бұрын
@@dpgwalter In vim you can also highlight first. For example compare vi)c with helix mi)c. Except in vim you can also simply do ci), ciw, cip, etc. Doing highlight first would be doing i)c, iwc, etc. It doesn't need to be inconsistent for the sake of copying vim while reinventing the wheel.
@KyleSmithNH
@KyleSmithNH 2 жыл бұрын
That register yank/paste behavior is identical to vim, but you didn't mention thet double-quote pops up a window which _shows_ the value of all your registers. That is amazing. Thanks for the overview, I'd spent some time trying to learn kakoune and eventually given up as it was quite far from vim and I wasn't able to get fast at it. Helix seems like a better compromise in basing so much on vim, except the key bits they wanted to improve on and baking in a ton of good defaults. Great video!
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks for watching Kyle! Agree that the visual reference of the contents of your registers is great.
@martinbecker1069
@martinbecker1069 2 жыл бұрын
Ok, you've convinced me to give helix a try, I have to say I like that you have space mode and goto mode since they show you what you can do, whereas (n)vim requires a plugin or some other potentially action to get vim to display a list of what commands you can do.
@codetothemoon
@codetothemoon 2 жыл бұрын
nice, yeah it's worth taking for a spin. I love the visual reference as well - it really helps soften the learning curve because you don't have to constantly Google how to do things
@yash1152
@yash1152 Жыл бұрын
-book-videomarks: 0:48 [editor] line-number = "relative" 1:30 Modes in hx (missed: view mode with z) 2:21 vertical split with C-v (how to close that?) 3:48 b for back word 5:07 alt dot to redo 6:24 , to go back to single cursor 7:29 copy-paste in hx 7:56 syntax aware motions in hx 9:22 rename a symbol in space mode 9:43 applying code actions suggestions from the LSP 10:34 jump points: C-o, C-i 11:12 R to replace selection with yanking 11:49 registers there should have been some option to preview register
@exponent42
@exponent42 2 жыл бұрын
i've spent far too much time troubleshooting my nvim config when a lsp or plugin changes behaviour or poops the bed that i'm so grateful they exist. I admire the defaults set by the team too, there's no longer a need to reach for Jetbrains / vscode when something breaks while needing to be productive
@codetothemoon
@codetothemoon 2 жыл бұрын
I agree, looking at my nvim config makes me a little dizzy - sometimes an opinionated approach with great defaults is really refreshing
@dwylhq874
@dwylhq874 2 жыл бұрын
Superb overview of Helix, Ken. 😍 This is _easily_ our favourite YT channel right now. 🚀
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks so much dwyl, happy you found it valuable!
@charlescabil7208
@charlescabil7208 2 жыл бұрын
Would love it if you continue this series...the best thing i ever saw on KZbin❤️
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks Charles! I Would love to do more of these.
@br4ndon364
@br4ndon364 Жыл бұрын
I just started using Helix last week, so glad I found this video
@codetothemoon
@codetothemoon Жыл бұрын
nice, glad you found it valuable!
@Tala2n
@Tala2n Жыл бұрын
I'm tired of switching modes, thinking about the current mode, thinking about the clipboard before copy paste something from the web browser, or to the web browser... Finally I just bound the hjkl keys to cursor moves in my Howl editor, and I'm happy !
@8koi245
@8koi245 Жыл бұрын
had no idea how to open it lmao, and seems like the correct introduction to nonGUI IDE!
@codetothemoon
@codetothemoon Жыл бұрын
The 'hx' command!
@theodorealenas3171
@theodorealenas3171 2 жыл бұрын
The presentation is amazing! I wish people were introduced to programming tools this way in general. Anything non 100% essential is associated with elitists. Helix looks catchy, it puts up front what one would need. It gives me ideas on how to configure NeoVim better. The Toml configuration convinces me to refactor my NeoVim configuration to make it more similar. And why haven't I made key bindings for going to common configuration files
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks Theodore, glad you found it valuable! Yeah I find the Helix toml so refreshing after wading through my 200+ line Neovim configuration...
@theodorealenas3171
@theodorealenas3171 2 жыл бұрын
@@codetothemoon Yeah. I noticed though, LUA's local loop_these_leader_maps = { e = ':cd ~', t = 'a{}O', } can look similar to a Toml. Except the commas, and the loop that will be in the end. So that's what I ended up doing. I'm not saying it's superior. Helix took the slick and fool proof approach. Though I would vote for an init like script... But Toml works.
@duckhorse2563
@duckhorse2563 2 жыл бұрын
Started using helix because Vs Code was getting slow. Got used to using a modal editor, and now I use nvim (lunarVim) as my editor of choice because of better plugin support.
@codetothemoon
@codetothemoon 2 жыл бұрын
Nice! Yeah plugins are super powerful, can't wait until Helix has them too.
@reed6514
@reed6514 2 жыл бұрын
This looks cool. I use SpaceVim (on top of neovim) and am happy. No reason for me to switch, but helix could be good for new users or those interested in learning stuff.
@codetothemoon
@codetothemoon 2 жыл бұрын
Nice, can't go wrong with vim!
@sergiuoanes4635
@sergiuoanes4635 2 жыл бұрын
I'm happy more people start to talk about Helix. It has a great future. Looking forward to switch from nvim, just tired of pluggins
@LuismaLorca
@LuismaLorca 2 жыл бұрын
If you're used to vim/nvim, helix is simply a downgrade. What really would have potential is if they made a fork of helix and upgraded it to standard vi motions.
@theherk
@theherk 2 жыл бұрын
@@LuismaLorca Why fork instead of allowing configuration to set other key maps? Also, I don't see why that would be an improvement, but if you want vi motions, there are plenty of editors with them. At any rate, supporting them probably would expand adoption, but a fork is definitely not required.
@LuismaLorca
@LuismaLorca 2 жыл бұрын
@@theherk It would need to support a single config line to switch from kakoune to vi. If we had to write an entire config only to use vim, it would defeat the purpose of minimal config alternative... The problem is, the authors are very committed to kakoune keybinds, so I don't see such thing happening. It's respectable and it's their project, but it will never become as popular as it could have been with their philosophy...
@theherk
@theherk 2 жыл бұрын
@@LuismaLorca that is what I mean; a config to select which set of keybinds, not rebinding all individually. And I think it is possible it will come to that once plugins are supported and the community is a bit larger, but only time will tell. There has been some discussion about this exact topic, so there are others interested too.
@codetothemoon
@codetothemoon 2 жыл бұрын
I agree, looking forward to how Helix develops.
@ibgib
@ibgib 8 ай бұрын
I've been playing around with Helix based on this video, and I'd say this is the experience that I expected with nvim + kickstart. There were lag + lsp issues with that though, whereas this has been relatively straight-forward. I'm having to learn some new motions that I've been using for the past decade, but those kinds of things are acceptable (probably good actually for the old brain). But it hasn't been erroring or crashing with a large project. So, so far so good 🤞🙏 Thanks for the video!
@michaelcarnevale5620
@michaelcarnevale5620 2 жыл бұрын
i rly like that Helix just offers lsp and good UX right out of the box.. when helix includes a plugin system i will try it and maybe move over. for now tho i rly do like how configurable and expandable Neovim is.
@pif5023
@pif5023 Жыл бұрын
Man, you have probably shown me the editor I was dreaming of! Giving it a solid shot, hope it works well with JS/TS projects
@codetothemoon
@codetothemoon Жыл бұрын
nice let us know what your experience is like!
@pif5023
@pif5023 Жыл бұрын
1 week in and I am already used to the new motions. Still some muscle memory to change but I got familiar with it faster then expected. Love the evil eMacs like commands Nvim doesn’t have, especially the ones related to file and buffers handling and lsp features. That is why I am interested in Helix. I have been using it only with Rust though, I still have to try it on a JS/TS project.
@pif5023
@pif5023 Жыл бұрын
Now I have a more thorough feedback. I am quite pleased with Helix, but it is missing a few key feature to be used out of the box as a VSC replacement in a bigger TS project. 1) multi lsp support, which may be incoming with the next release 2) global search an replace, this is a big one and I hope I haven’t missed it 3) tree view file picker, some times you need to see the structure of the file tree, I think this is also incoming with the next release. Perhaps I will contribute with the global search and replace, that’s something you need to have for speed of work.
@anon3118
@anon3118 2 жыл бұрын
This was exactly what I wanted out of nvim! I'm gonna try this out
@codetothemoon
@codetothemoon 2 жыл бұрын
Nice let us know what you think!
@fabyao
@fabyao 2 жыл бұрын
Great video! I would love to see another where you demonstrate your development workflow with Helix. Specifically check out a main branch, create a dev branch, stage, commit and push. Possibly show some unit tests and debugging scenarios? At the time of writing this, Helix doesnt have a folder view like nvim-tree. Nor does it have a builtin terminal. Helix is going in the right directions but not ready for my use case.
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks fabyao! as far as I know there is currently no git integration in Helix - that's being deferred to a plugin when the plugin infrastructure is in place. Same thing with debugging afaik. Generally speaking and to your point - until Helix plugins are a thing I think it's going to be missing some of the core non negotiable features many people need
@k1mpman
@k1mpman 2 жыл бұрын
Great video. Thanks a bunch! I've been learning vim for a few weeks now and maybe it's a good thing to try helix while im still a beginner
@fudgepuppy9683
@fudgepuppy9683 2 жыл бұрын
Not a bad mindset. Most of it will carry over in either direction. Though do keep in mind that everything you'll run or remote into has vi at least so at least don't give up on going to an in term modal editor
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks! Yeah wouldn't hurt to try both, like fudge puppy mentioned many of the motions are the same so your effort won't be wasted even if you decide to switch back to vim
@DAV30371
@DAV30371 Жыл бұрын
I'd just like to say its the GOAT of text editors.
@CyperN077
@CyperN077 2 жыл бұрын
Thanks for posting this video. It's nice and explains a lot in such a short video.
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks for watching Cyper, glad you found it valuable!
@PaulSebastianM
@PaulSebastianM 11 ай бұрын
Helix is my favorite text editor now.
@codetothemoon
@codetothemoon 10 ай бұрын
Nice! ooc was it your first CLI based editor or did you using *vim or emacs prior?
@PaulSebastianM
@PaulSebastianM 10 ай бұрын
@@codetothemoon vi, vim many years ago, nvim recently but soon found helix and simply find it more productive and intuitive and I personally feel faster in it.
@Rudxain
@Rudxain 8 ай бұрын
Thank you for this video! I learned some new stuff (and refreshed existing memories (DRAM pun, haha)) even after reading the docs and using `--tutor` (I've practiced until the end of chapter 4, so I was missing out on a lot of stuff)
@dgurnick
@dgurnick 2 жыл бұрын
I love everything about this. The guys I work with: they will punch me.
@codetothemoon
@codetothemoon 2 жыл бұрын
Hey, nothing wrong with being the "black sheep" of the office!
@AceofSpades5757
@AceofSpades5757 2 жыл бұрын
I've been using Helix for a few months and it's extremely good. Sadly it's still missing a few things that I need as my main editor. I still use it whenever possible.
@codetothemoon
@codetothemoon 2 жыл бұрын
Understandable - yeah I think once plugins are supported it'll probably be more palatable for most people as their main editor
@digitaldisruptlabs
@digitaldisruptlabs 2 жыл бұрын
What are those elements that are missing? 😃
@AceofSpades5757
@AceofSpades5757 2 жыл бұрын
@@digitaldisruptlabs Right now, I'm missing state persistence. If I leave Helix, all of my session's state is gone. This can be difficult to deal with while adjusting my workflow. Smaller things are like virtual text and soft wrapping. Usually, these aren't a big deal, but Vim has all these things in the form of plugins.
@stefankyriacou7151
@stefankyriacou7151 2 жыл бұрын
@@AceofSpades5757 Out of curiosity, could tmux potentially solve your state persistence issue?
@digitaldisruptlabs
@digitaldisruptlabs 2 жыл бұрын
@@stefankyriacou7151 I was thinking the same, there is some Tmux plugins that saves your buffer and save it to disk. Tmux resurrect is the one I use... it saves mostly of the tools. I haven't try with Helix, but for sure I will mess around. Probably that can help on your workflow Ace
@AmirHosseinHonardust
@AmirHosseinHonardust 2 жыл бұрын
I really love helix. I am using it during my day job along side vim. In general, in most cases it offers a smoother experience than my neovim setup. But it lacks a tree view file explorer for now which is kind of essential for when you are making a huge file structure or navigating one. For when I'm doing that , i temporarily use neovim.
@abuwabu
@abuwabu 2 жыл бұрын
It works beautifully in conjunction with xplr (FWIW)
@codetothemoon
@codetothemoon 2 жыл бұрын
Nice, yeah it's going to be amazing when plugin support is ready - I feel like the community is going to be fast to fill the gaps like this with plugins
@AmirHosseinHonardust
@AmirHosseinHonardust 2 жыл бұрын
@@codetothemoon the new trend to implement the plugin system in wasm is also really promising as well!
@AmirHosseinHonardust
@AmirHosseinHonardust 2 жыл бұрын
@@abuwabu does xplr offer something in particular that other tui file managers don't for this workflow?
@abuwabu
@abuwabu 2 жыл бұрын
@@AmirHosseinHonardust somethings, yes, like the ability to stay in create file/folder mode and build out structures of your file trees.
@luccahuguet
@luccahuguet 2 жыл бұрын
Love the video! Been enjoying Helix a lot so far
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks and nice!!
@blessdarah1256
@blessdarah1256 2 жыл бұрын
I tried it, but make me unlearn vim so I went right back to neovim and continued there. It's still a good idea to have an alternative though. Great content.
@DigvijayPatankar
@DigvijayPatankar Жыл бұрын
Great video with a very good intro to helix.
@codetothemoon
@codetothemoon Жыл бұрын
thank you!
@maxreuv
@maxreuv 2 жыл бұрын
Excellent! Thank you for sharing
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks for watching!
@owenquinlan6047
@owenquinlan6047 2 жыл бұрын
Great video! Having a link to the github/webpage in the description when talking about these things would be handy tho!
@minitrex4533
@minitrex4533 2 жыл бұрын
This video really helped me. Thank you very much!!!
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks for watching MiniTrex!
@Matt23488
@Matt23488 Жыл бұрын
I am very interested in learning a modal editor, but every time I try, it seem so daunting and overwhelming, I have to give up because I simply don't have time to spend relearning how to use an editor. One day, though.
@NOPerative
@NOPerative 2 жыл бұрын
Awesome. Gonna be looking into Helix. Good vid!
@voxelltech
@voxelltech 2 жыл бұрын
Thanks for the video! This has been really insightful!
@codetothemoon
@codetothemoon 2 жыл бұрын
Glad you enjoyed it!
@ejazahmed4609
@ejazahmed4609 2 жыл бұрын
Your content is top dynamic-island (notch. Really wanted to make this joke. haha) as always!! Thanks! What does your dev environment looks like for the projects you work on?
@codetothemoon
@codetothemoon 2 жыл бұрын
wow, i consider myself an Apple fanboy but I didn't know what dynamic island was until I looked it up. Shame on me 🙃 Seriously though, thank you! My dev environment is in a bit of flux right now as I'm trying tons of new stuff out. Up until this year it's primarily been IntelliJ, but going forward I think it's likely to be Helix or neovim. Once I converge on a setup that I'm really happy with I might do a video about it...
@MechMK1
@MechMK1 Жыл бұрын
I would *love* to see a scientific study to investigate the claim that non-graphical editors are more productive than graphical ones. For example, take a representative group of beginner, experienced and veteran users for both, then give both groups representative work and measure how long they take. My gut feeling is that it will likely be that in the beginner bracket, graphical editors will show a clear advantage. In the experienced bracket, graphical will still have a slight but less noticeable advantage. And in the veteran bracket, non-graphical will show a slight but noticeable advantage.
@codetothemoon
@codetothemoon Жыл бұрын
I would love to see this study as well, and I agree with your intuition about what the result would likely be. My use of the word “can” was very deliberate given that I don’t think there has been such a study 😎
@RogerValor
@RogerValor Жыл бұрын
I had the same thought and I find it good that the word "can" has been used, as this almost goes back to the emacs wars! I think it has a lot to do however what you are used to. I grew up with mouse usage and as a gamer I am quick to handle the mouse, and I would not say that I am slower with graphicals than my collegues with vim, except in multi line editing, which however not all of them can do. The speed of the graphical editor can be an issue, and with visual studio code, I feel like you constantly have to actually also ignore clutter on the screen while you type, because it is already super smart. So any study would really have to find a lot of participants and judge their experience! However I am probably in the minority here, as a non-vim user. For C# I switched back to VS, and for python I will probably stick with eclipse (don't laugh, pydev is faster than pycharm and vscode, so yes, eclipse is actually by now "light weight" holy moly), but in rust, I might even try helix, but there I am currently using vscode. I actually hope one day there will also be a graphical editor coming from the rust scene.
@stillcinematic3163
@stillcinematic3163 Жыл бұрын
Excellent video! Keep up the great work!
@irlshrek
@irlshrek 2 жыл бұрын
duuuuude! amazing find! getting this nowwww
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks Eran! Let us know what you think of it!
@spongechameleon6940
@spongechameleon6940 2 жыл бұрын
Really like the highlighting by default meta. Other than that looks pretty similar to nvim, especially all the moon related vims coming out lately. I just wish one of these vim revamps a built in debugger and built in git diffs. Having different terminals open for lazygit and whatever debugger always ends up being too messy when I'm working across two or three repos simultaneously (gotta love microservice architectures) and the mental overhead is too much. I'd like a real ide in a terminal. Maybe i oughta check out that whole emacs thing...
@codetothemoon
@codetothemoon 2 жыл бұрын
Yeah I like it as well. Seems like debugging has been a pervasive pain point for the vim community. Emacs is also on my list of things to explore...
@florianhennig4778
@florianhennig4778 2 жыл бұрын
@@codetothemoon Well there is nvim-dap and nvim-dap-ui. I use it on a daily basis and it's not bad at all. You can even reuse your existing launch.json file from VS Code.
@nickbanderson
@nickbanderson 2 жыл бұрын
A combo of harpoon.nvim for terminal management and fugitive/lazygit makes one nvim instance per repo in a collection of tmux tabs pretty ergonomic for me. +1 on nvim dap ui. I hit space h g to navigate to lazygit terminal (or create if it isnt running yet), then I can c-q for normal mode and either c-6 to go-to previous buffer I was editing or harpoon to marked files with space 1-6.
@gareth2021
@gareth2021 2 жыл бұрын
thanks for the video, seems helix is a bit more beginner friendly than vim. I will def check it out :)
@codetothemoon
@codetothemoon 2 жыл бұрын
it is indeed, let us know what you think of it!
@nickross4059
@nickross4059 Жыл бұрын
I would argue that debugging is the killer feature of visual editors. How does helix handle debugging
@codetothemoon
@codetothemoon Жыл бұрын
With what I know I'd probably agree with you, though it looks like there a narrative around debugging with Helix is emerging (but still experimental?) helix-editor.com/news/release-22-03-highlights/ . Personally the thing that stops me from debugging isn't the editor but with breakpoints causing network timeouts :)
@beatraad
@beatraad Жыл бұрын
Thanks for the video!
@codetothemoon
@codetothemoon Жыл бұрын
thanks for watching, glad you got something out of it!
@glyakk
@glyakk Жыл бұрын
So far I like it as a reprive from neovim. I do not think I will completly switch since there are some 'quality of life' items that I have configured for myself and gotten used to, but if I was faced with the option of starting over with neovim or use Helix I would probably go with Helix if for no other reason then to reduce my dependance on plugins.
@peacemekka
@peacemekka Жыл бұрын
It seems to be built like an IDE rather than a text editor which is really nice. Since vim/neovim are text editors that you can extend, this seems to be an IDE that you can extend.
@codetothemoon
@codetothemoon Жыл бұрын
I agree - it's built with being an IDE in mind, as opposed to vim and emacs which don't assume anything about how you are going to use them, despite the reality that they are primarily used by software developers 😎
@peacemekka
@peacemekka Жыл бұрын
@@codetothemoon true that. This actually makes helix a different product altogether. Right now there are plugins for vim/neovim that are all trying hard to get it to IDE status while still not being a complete IDE experience. Imagine if the IDE part was built into vim. Thats when the community can focus on more advanced IDE features as plugins which means it will then be able to provide a complete IDE experience. I am liking where Helix is headed if it succeeds. Just the kakuone style editing is putting me off a little.
@pinpox
@pinpox 2 жыл бұрын
I understand that having highlights as the main instrument might prevent mistakes, but it feels like unnecessary extra steps for the most common actions. I wouldn’t visually select a paragraph in vim to the delete it (vipd) even though you can for example
@codetothemoon
@codetothemoon 2 жыл бұрын
yeah I think this is going to be the qualm most folks coming from vim are going to have (aside from plugin support which appears to be on its way). Some actions are arguably a bit less ergonomic and others are more ergonomic
@yumbuboyumbubo8230
@yumbuboyumbubo8230 2 жыл бұрын
I strugle to adapt to vim, mainly because I have to use eclipse at work... pflew... My main issues are: 1 highlighting before editing is my thing 2 I love multicursors 3 I do want to copy and paste from/to other sources/targets using my mouse 4 Costumizing is painful, copying someone elses confing also painful, cos its imposible to know their workflow. 5 normal regex search? From the video helix could be my thing :D
@codetothemoon
@codetothemoon 2 жыл бұрын
Nice yeah re: #1 you'll definitely like Helix better. Everything else on your list I think is covered by Helix. Re: #3 space mode has motions to copy/paste to and from the system clipboard, so you should be good there as well.
@bataragirsang
@bataragirsang 8 ай бұрын
it's really good so far, hope have file tree like nvim-tree with file/folder modification feature..
@maurolimaok
@maurolimaok Жыл бұрын
I'm on my first steps on Odin Project. This stuff will be very useful soon. Thanks. This geometric animated desktop of yours is awesome. Would you mind to tell how to do it? Big hug from Brazil. Thanks for the vídeos.
@thepaulcraft957
@thepaulcraft957 2 жыл бұрын
the part with yanking someone else's config in (neo)vim isn't right in my opinion. When I started out using neovim I just started building mine. Using someone else's just doesn't work
@katech6020
@katech6020 2 жыл бұрын
I agree, it is very hard to use what someone else find usable and comfortable
@codetothemoon
@codetothemoon 2 жыл бұрын
yeah maybe not everyone does that. Either way, I personally found (and I can't be the only one) setting up the config file to be a huge source of friction when first learning vim, when you're already struggling to learn all the motions.
@Flackon
@Flackon 2 жыл бұрын
Yeah, there's no way I could follow what I'm doing if I just copied someone's config. Still, something to be said that for (neo)vim, several hours dedicated to configuring, researching and installing plugins get you close to the functionality that VSCode (or Helix) have out of the box. Even if after config your setup is superior to those, that investment is a pretty huge barrier that vim advocates don't often talk about
@devopstoolbox
@devopstoolbox 11 ай бұрын
Great video! I keep watching Helix content and playing with it and the thought I'm left with is "hmm this is basically neovim with no additional plugins available, and an opinionated refreshing look on normal/visual mode, that can easily be a neovim plugin..." So I'm thinking of Helix as a fully baked kickstarter neovim falvor with a slightly different approach to motions. Even the mentioned move between functions and structs is becoming very popular with text objects used by (most?) of the neovim community. What do you think? It kind of blows my mind that someone would sit an re-write Neovim from the ground in Rust just for that one tweak...
@digitaldisruptlabs
@digitaldisruptlabs 2 жыл бұрын
Amazing video, I tried Helix sometime ago, but it just simply did not catch me at first. After this video I just wanted to try it again :)
@codetothemoon
@codetothemoon 2 жыл бұрын
Thank you! It's definitely worth a try
@AlfanNurFauzan
@AlfanNurFauzan Жыл бұрын
hey thanks for sharing. really appreciate it. do you use helix in daily programming activities?
@codetothemoon
@codetothemoon Жыл бұрын
I did for a bit after making this video, but eventually switched back to neovim, then later doom emacs. Likely going to be using doom emacs for the foreseeable future, but I am planning to revisit Helix after they add plugin support. I still think it's a fantastic editor.
@vadimemelin2941
@vadimemelin2941 11 ай бұрын
No offense, but not only this editor didn't pick my rust project out of the box, but the default extensions provided by visual studio code are way more informative and helpful, than what I see on the video To be honest, I would rather be able to use f12, ctrl+f12 and shift+f12 to go to source/implementation and usings of a symbol, than have a hotkey to jump from one symbol to another inside of a file
@tristen_grant
@tristen_grant 8 ай бұрын
Why would he find this offensive?
@vadimemelin2941
@vadimemelin2941 8 ай бұрын
@@tristen_grant It's a figure of speech, and I think I might have been wrong either way
@SolathPrime
@SolathPrime 7 ай бұрын
Welp allow me to correct you about the first 20 seconds of the video As leet developer and expert in none graphical editor myself I wanna say that it doesn't make any difference, it's even counterproductive. I have used pycharm, vscode, emacs, and neovim and through out my experience I had no instance where I needed to switch editor just because I felt like not productive enough. While working with the terminal maybe it makes sense I don't need to open visual studio just to edit 2 lines of C, otherwise it makes no difference don't waste time trying to optimize beyond good enough. Like seriously it's the number one rule of programming "if it works don't fuck with it!" Now that I said what's on my heart I can continue watching normally
@kevinmadison2088
@kevinmadison2088 Жыл бұрын
So I'm curious about the "out of the box" syntax highlighting. On my machine I did have to install an lsp, but helix did recognize it without any configuration. I'm assuming you already had rust-analyzer installed? I bring this up because it was a point of confusion for me when trying this for the first time. This video is honestly a great reference.
@vikingthedude
@vikingthedude Жыл бұрын
I only just started using vim/neovim. Should I switch to helix before my muscle memory settles in?
@codetothemoon
@codetothemoon Жыл бұрын
this is a tough one. The good thing is that there's tons of overlap between the two in terms of muscle memory, the main differences are the order in which you type things. So going one way or the other isn't a massive commitment like choosing between learning emacs (the defaults) or vim bindings is. If I had to choose, I'd err on the side of caution and start with the vim bindings, just because those are so much more ubiquitous at the moment (and will allow you to easily switch to something like emacs in evil mode if you'd like to). I'm still hopeful that Helix will implement a "vim mode", but last I checked there seemed to be vehement resistance to this amongst the maintainers.
@maguilecutty
@maguilecutty 10 ай бұрын
Shift { will allow u to move via Strucks or functions etc in vim
@leonie9248
@leonie9248 Жыл бұрын
This video intro is really great. Thanks so much for sharing it! Your style of presenting is fantastic. A nitpick (of course): Actually, it is not recommended nor expected that you copy someone else’s (neo)vim configuration. It is explicitly stated that you should select what makes *your* productive and *not* copy someone else’s config. Regardless, Helix looks dope.
@kodingamedev
@kodingamedev Жыл бұрын
Helix seems interesting, but I find all of the interesting stuff comes from kakoune, so that's what I use.
@codetothemoon
@codetothemoon Жыл бұрын
heard that's where a lot of the inspiration came from, hoping I get a chance to try it myself...
@kodingamedev
@kodingamedev Жыл бұрын
@@codetothemoon I highly reccomend it! Kakoune is much simpler than vim and it's derivatives imo; without sacrificing on speed and extensibility.
@dominiccasts
@dominiccasts 2 жыл бұрын
The one thing I can't figure out, and maybe it's because I'm on Windows and installed it the way I would any program, by unzipping the release folder somewhere, is how to actually find files. I cannot seem to explore the filesystem at all except maybe if I put a copy of Helix in the top level folder of whatever I'm trying to edit, which really doesn't work in practice.
@dmurphydrtc
@dmurphydrtc 2 жыл бұрын
Great content. Thanks
@codetothemoon
@codetothemoon 2 жыл бұрын
thanks for watching David!
@voncth5791
@voncth5791 Жыл бұрын
Thx for the video :) earned a subscribe, i am using vscode for the moment but when working on rust projects the formatting sucks and i get comflicts with other extensions. I will try this out thx :)
@pranavp.a1200
@pranavp.a1200 2 жыл бұрын
Informative video. But ngl, there is some shade you are throwing on vim. Especially in the helix mindset section around 5:30 when you delete a word backwards. In vim u just do db to delete a word back words, so two key presses just as helix, so equally efficient.
@codetothemoon
@codetothemoon 2 жыл бұрын
You're absolutely right! I use 'dw' all the time but I actually hadn't ever thought to use 'db'. I'll add this to a pinned errata post, thanks for pointing it out!
@mardense6835
@mardense6835 2 жыл бұрын
At 3:25 - I think vim (and nvim) both provide syntax highlighting out of the box. If it's not enabled by default (for me it was), `:syntax on` enables it. Though I think the one vim provides is more "stupid" than Helix's. Helix has better completion and other diagnostics out of the box thanks to the LSP, though (even if nvim has narrowed the gap a bit lately).
@codetothemoon
@codetothemoon 2 жыл бұрын
thanks for the info - in vim sometimes i have trouble distinguishing between what's happening via vim itself and what the plugins are doing
@bbbaaa9421
@bbbaaa9421 Жыл бұрын
Nice detailed video on Helix, does renaming/refactoring works for file name, lets say if we rename file name "error.rs" to errors.rs, will it get replaced in main.rs with "mod errors" ?
@codetothemoon
@codetothemoon Жыл бұрын
Thanks! I'm actually not sure, i'd have to give that a try.
@bbbaaa9421
@bbbaaa9421 Жыл бұрын
@@codetothemoon I don't see many editors doing it, only available in IntelliJ, am not sure whether they have patented it , tbh. idk..
@JasonJurotich
@JasonJurotich 2 жыл бұрын
In vim you had the inlay suggestions from clippy. Is there a way to have that in helix?
@codetothemoon
@codetothemoon 2 жыл бұрын
Currently I think the answer is no, hopefully this is supported prior to the plugin architecture being built out!
@JasonJurotich
@JasonJurotich 2 жыл бұрын
@@codetothemoon yes! that and snippets and soft-wrapping the text, both of which are also missing. Three more things needed before being able to switch from Vim or VS Code, but looking good though.
@AbhishekBajpaiHere
@AbhishekBajpaiHere 2 жыл бұрын
oh man i am so happy that you finally arrived at helix, i tried it for sometime but couldn't stick to it. I loved the editor though. I will try it again because now i know there is someone i can ask questions to ;) As usual love you content. keep it up. let me know if you are on discord or any other means of communication.
@codetothemoon
@codetothemoon 2 жыл бұрын
Glad you liked it! Thanks for the kind words. I've been thinking about maybe making a Discord server, but I keep thinking it might be redundant with all the great Discord servers already out there, like Primeagen has created. Do you think a CTTM Discord server would be valuable?
@AbhishekBajpaiHere
@AbhishekBajpaiHere 2 жыл бұрын
@@codetothemoon You shd wait and see if more ppl ask then great. Primeagen doesn't have helix related discussions. There is a matrix chat but i have to download a separate extension for that.
@SanguineIllusion
@SanguineIllusion Жыл бұрын
Helix approach to selections is very similar to meow mode in emacs. I wonder if the meow mode author was inspired by Helix.
@Nikandlv
@Nikandlv 2 жыл бұрын
Keep up the good work!
@codetothemoon
@codetothemoon 2 жыл бұрын
Thanks Nikan!
@darklajid
@darklajid 2 жыл бұрын
It's just a trivial/quick search away, but I'd suggest to ... link to the actual editor you're showcasing somewhere in the description of the video? :-p
@codetothemoon
@codetothemoon 2 жыл бұрын
Yeah I probably should have done that!
@florianhennig4778
@florianhennig4778 2 жыл бұрын
The "highlight everything" is kind of a no go to me. For me it seems like the devs didn't really know enough of vim by making this decision. In vim visual mode is somewhat optional, most of the stuff you want to do can be done without entering visual mode at all. If I know, that I want to change or delete everything inside curly braces, hitting "daB" is way less mental overhead then first selecting/highlighting it and then perform a certain action. Also I don't really get the point of enabling relative line numbering if it is not possible to use it with ex commands like "-10,5t." (copy the lines -10 to 5 to the current cursor location). But the video is pretty good, keep up the highly informative content.
@ThePandaGuitar
@ThePandaGuitar Жыл бұрын
Great, how do you find and replace a symbol across the entire workspace?
@-aexc-
@-aexc- Жыл бұрын
I wish I could switch back to helix (it was my first tui text editor), but I cannot handle two sets of keybindings at once. and I need to use neovim because vim is the only text editors on things I ssh into
@codetothemoon
@codetothemoon Жыл бұрын
understandable, I think they really do need a vim mode of some kind.
@ditchcomfort
@ditchcomfort 2 жыл бұрын
Are there a Tokyo Night theme in Helix, and can you have indentation lines?
@justanaveragebalkan
@justanaveragebalkan 2 жыл бұрын
I don't agree there is nothing better then Rider out there.
@codetothemoon
@codetothemoon 2 жыл бұрын
Heard great things about Rider, can't go wrong with JetBrains in general!
@danko95bgd
@danko95bgd 2 жыл бұрын
vscode becoming big poop made me switch to helix. It's my first terminal modal editor and i like it so far and it will only get better.
@codetothemoon
@codetothemoon 2 жыл бұрын
Nice Danko! I like Helix too and I think it's going to be even better with plugin support
@protocode_227
@protocode_227 2 жыл бұрын
how does it tackle plugins / how is the economy 👀
@codetothemoon
@codetothemoon 2 жыл бұрын
Plugins don't exist quite yet, but I believe the current sentiment is that there will be a WebAssembly based plugin infrastructure at some point.
@everythingiscoolio
@everythingiscoolio 2 жыл бұрын
This is great for if you don't have a real IDE available but I just don't see how this can measure up in any way to automatic test generation, integrated pair programming, and any of the other of thousands of plugins that have been written for for example IntelliJ.
@codetothemoon
@codetothemoon 2 жыл бұрын
I agree that there is an upper bound to how successful Helix can be without a plugin system - luckily they are working on a WASM based one! But yeah even then it will have to compete with the rich collection of plugins that Neovim/IntelliJ/VSCode have.
@ezioauditore7636
@ezioauditore7636 2 жыл бұрын
Many of these features will be added to the core or as plugins in the future. Pair programming specifically might be added to core.
@beepst
@beepst Жыл бұрын
I'd like to use this as my daily editor, but I can't make it to work properly for React (autocompletion on HTML / JSX / TSX element properties doesn't work at all). Maybe it's me being ignorant, but in the meantime I'll keep using Neovim.
@codetothemoon
@codetothemoon Жыл бұрын
I had to switch back to Neovim as well, despite Helix working really well for Rust. I found that for my workflow I was using slightly more keystrokes with Helix - especially because it didn't support the `ci"` motion that replaces the content inside the next set of double quotes. I still hope to return to it, especially after plugins are implemented.
@beepst
@beepst Жыл бұрын
​@@codetothemoon Exactly. I think it leans more towards backend development at the moment. The surround feature needs more work as well (for tags, etc). I look forward for future updates, as I really like the idea of this editor.
@MuStevenPlay
@MuStevenPlay 2 жыл бұрын
Woww! Subscribed at once :)
@MuStevenPlay
@MuStevenPlay 2 жыл бұрын
Also downloading helix and definitely giving it a try!! (from neovim 👍)
@codetothemoon
@codetothemoon 2 жыл бұрын
Nice, very happy to have you onboard!!
@codetothemoon
@codetothemoon 2 жыл бұрын
Let us know how you like Helix!
@duckner
@duckner 2 жыл бұрын
you can do pretty much all of this and more with the keyboard in vscode, just might take a lot of configuration
@codetothemoon
@codetothemoon 2 жыл бұрын
Probably true!
@desireco
@desireco 2 жыл бұрын
It is weird that just following video things don't work on virgin helix :) shift-v didn't work at all for example. Really interesting editor, I am trying it on some Ruby code.
@codetothemoon
@codetothemoon 2 жыл бұрын
I think by default shift+v doesn't do anything in Helix, if you're trying to go into visual mode it's just 'v', if you're trying to highlight an entire line like it would do in vim that can be done with 'x'
@youpapai
@youpapai 2 жыл бұрын
vscode + "vim extension" is an option for mouse free graphical text editor
@codetothemoon
@codetothemoon 2 жыл бұрын
A very compelling option for many people!
@T1Oracle
@T1Oracle 5 ай бұрын
This character movement stuff is so weird to me, because that's not how I write code. I use the mouse constantly. I copy and past constantly. I sometimes jump into nodejs, past code into it, and use splits, joins, maps, etc to transform that copied text into the code I want. I don't tap away at keys constantly.
Rust Artificial Intelligence (The Simple Way)
12:08
Code to the Moon
Рет қаралды 50 М.
Rust's Most Important Containers 📦 10 Useful Patterns
17:11
Code to the Moon
Рет қаралды 128 М.
1, 2, 3, 4, 5, 6, 7, 8, 9 🙈⚽️
00:46
Celine Dept
Рет қаралды 114 МЛН
FOREVER BUNNY
00:14
Natan por Aí
Рет қаралды 29 МЛН
СКОЛЬКО ПАЛЬЦЕВ ТУТ?
00:16
Masomka
Рет қаралды 3,5 МЛН
Helix Text Editor: A Review
13:42
Diego Sandoval
Рет қаралды 35 М.
I made my own Text Editor (in Rust)
8:16
FaceDev
Рет қаралды 126 М.
Rust Powered Polymorphism ⚡️ With Traits
9:55
Code to the Moon
Рет қаралды 104 М.
Dioxus vs Leptos  | Rust GUI Wars #2
21:18
Creative Coders
Рет қаралды 9 М.
Zed “kills” VSCode
12:10
Alex Ziskind
Рет қаралды 876 М.
Writing My Own Text Editor | Prime Reacts
16:10
ThePrimeTime
Рет қаралды 99 М.
Helix & marksman! (why I don't use Obsidian)
8:43
Luke Pighetti
Рет қаралды 31 М.
My Forever Dev Workflow
16:02
typecraft
Рет қаралды 107 М.
Rust's Alien Data Types 👽 Box, Rc, Arc
11:54
Code to the Moon
Рет қаралды 151 М.
The Star Language that will outshine Rust? Gleam
10:33
Code to the Moon
Рет қаралды 41 М.
1, 2, 3, 4, 5, 6, 7, 8, 9 🙈⚽️
00:46
Celine Dept
Рет қаралды 114 МЛН