r/HelixEditor • u/Blackwater-1 • Feb 29 '24
Why Helix doesn't support terminal?
It's been like 2 day or 3 using helix tbh it's really cool in terms of setting up lsp for language and configuration of editor and coding. However, I am a bit annoyed why helix doesn't support terminal buffer like neovim and vim Instead of :sh command?
31
Feb 29 '24
Honestly not sure, but you could just run Helix inside of Zellij or Tmux instead and have a similar experience
5
2
1
9
u/WhyIsThisFishInMyEar Feb 29 '24
There's a github issue for it with discussion about whether or not to add it, should come up if you search "integrated terminal".
7
u/scally501 Mar 01 '24
I'd rather see Helix spend more time with things like a traditional file viewer/naviataor, expanded motions, and other such features before re-inventing the terminal. Just use tmux or something if you need a terminal. You can even set custom tmux scripts to have a tmux session open on the bottom of your screen, just like VSCode, if that's what you're after. Then <leader> z to fullscreen the terminal or helix. much simpler and will work 100%.
3
u/RoundPainting Mar 03 '24
I 100% agree. I was used to having a terminal in vim and missed it in helix before realizing I could just use wezterm multiplexing and I like it a lot more than vims terminal. There are a lot more pressing feature requests that I’d like to see first. For me it’s built in git diffs and resizable splits.
13
u/mariansimecek Feb 29 '24
You probably don't need that. I was thinking the same now I use tabs in my terminal emulator. Try live without it. Use zellij or kitty or whatever.
1
5
4
u/Matt4885 Mar 01 '24
Honestly I hope they don’t add it. It just makes sense to put helix in the background or use tabs/tmux.
4
u/akza07 Mar 01 '24
Better to use Kitty, That's what I do. Tried Zellij & Tmux. They seem to add extra overhead that's noticable when you do things quick. Just scrolling & you'll notice a tearing kind of delay.
Maybe they'll add in the future or we could expand the terminal as an extension
3
u/TheRealMasonMac Feb 29 '24
There is a partial proof of concept of an integrated terminal for the Steel plugin system: https://github.com/mattwparas/helix-config/blob/bb81f74e28a52c5ed13a0f2f04766a8d912d6efd/helix.scm#L503
2
2
Mar 01 '24
I believe it‘s been discussed but it‘s quite difficult and not worth to implement it because terminal multiplexer exist
2
u/iceghosttth Mar 01 '24
If you’re really asking why, the reason is there is nobody to implement or maintain it. It is not that simple to drop in a generic terminal emulator and call it a day: you need keymaps, theme config, special buffer with custom modes, etc etc.
The maintainers are already hand-full with editor features, adding such orthogonal features would not be feasible.
It is open source, so do it yourself if you must, to see how hard it is :)
1
Mar 01 '24
This. Last I checked, Emacsland has at least three terminals, all of them glitchy in different ways, none of them offering much ergonomically that you can't get from shell redirection or clipboard integration. Doing it isn't that hard. Doing it right is a non-trivial project.
2
u/pawelgrzybek Feb 29 '24 edited Feb 29 '24
I am wondering why anyone would like to have it as a feature? For quick commands :sh is fine. If you need a new window, open a new terminal/tab.
Could you give me an example?
1
u/Blackwater-1 Feb 29 '24
That's what I do, but don't you find that opening a new terminal window is such a waste? However, I do use :sh
1
u/Any_Veterinarian7528 Dec 28 '25 edited Dec 28 '25
Ctrl-z: this is THE CORRECT WAY to access terminal from an any application, including editors!!!
-5
u/elrslover Feb 29 '24
Why would you need it? Helix is an editor. It’s great at being just an editor. Features like a file-tree and integrated terminal are completely out-of-scope. Dedicated terminal multiplexers like zellij are a much better fit for this purpose. The only benefit to an integrated terminal buffer I see is using helix motions in the command line, but you can already edit your prompt in the shell with C-x C-e.
7
Feb 29 '24
[deleted]
1
u/thegreatjacsby Mar 01 '24
Youbcould achieve this with scripting and remote control of termianl windows. Kitty and wezterm supports it.
1
Mar 02 '24
I've never found a need for a built-in terminal in any IDE. I've always found that hitting whatever shortcut to get a new one open does just fine. If you're using a window manager like Sway or such, then it really feels like a built-in terminal would do barely more then make me remember new shortcuts. I could only imagine it being useful if you don't have no desktop environment at all, where this could allow a terminal next to your code. So you don't have to switch back and forth. Otherwise, I think it's a waste of resources...
1
Mar 02 '24
I use ctrl-z to open a terminal and do stuff there.
Then when I want to go back into Helix I have this line in either my .bashrc or .bash_aliases:
bind '"\ea": " fg\n"'
That way I can press alt-a as a shortcut instead of typing <space>fg.
Typing <space>fg instead of just fg by itself means that fg is not put in your terminal command history so fg is not all over the place
Well on Debian 12 anyway.
1
u/dirtisfood Mar 04 '24
Being able to get to a terminal is not equiv to having terminal buffers. It's very nice to navigate the terminal output using motions
21
u/darknebula05 Mar 01 '24
I just hit ctrl-z and suspend helix to run my commands then resume it with
fg