The demo is more than an animated cursor. The demo is showing that:
- you can override any output coming from the terminal and choose not to display it (in this case the "command not found" output is overridden)
- you can lay out an arbitrary `canvas` element on top and have complete freedom to style however you want.
The idea behind Hyper is that you can do everything as plugins. Instead of creating an experimental terminal like TermKit, my decision was to ship a _useful_ terminal and let it be arbitrarily and infinitely extended.
I've dabbled a bit with hyper and the obvious benefit is how easy it is to write extensions. I got a prototype within 30min that would display certain html or images in command output – imagine a long-running process continually updating a dashboard that could use any js graph library. Or a script that you could stick anywhere in a pipe chain that visualises whatever data you're processing.
With that in mind, it is bound to be somewhat underwhelming until some "killer plugins" appear. I've been thinking about IDE functions like "black screen" is implementing, for example: type a command and the available options and their meaning pop up.
I gave this a shot a few months ago. It was not bad but had many usability and stability problems like unsupported fonts, crashing and some others that I don't remember now. Terminal is the last thing I expect to crash. Did not find a compelling reason to ditch iTerm2 on Mac and Terminator on Linux.
I also gave Hyper a solid go but found the native Terminal and tmux/tmuxinator gives me all the same (worthwhile) utility without some bugs related to pane management and history preservation. With Hyper I regularly experienced history being cleared and lost even in the same pane/window, but I couldn't force replication which made it more frustrating. Also, it has some strange feature (?) that can spawn a browser window inside the terminal but I can never figure out how to escape it.
I agree that my terminal shouldn't crash. I handle so many fundamental parts of my workflow in terminal so it has to be stable and efficient.
I have given it a solid try and I've contributed to the hyperline package. But I've had panes crash/go unresponsive kind of frequently. This isn't to say I won't use it, just that I think I still prefer Terminal. One person's opinion is all. :)
I run Hyper on my laptop, with iTerm on my external display.
Hyper is split vertically 33/67 and horizontally 50/50. I run normal command-line stuff in the small panes (git, curl, etc), and my node/ruby servers in the larger.
I run tmux/vim in iTerm.
Something about my tmux, or vim setup didn't play particularly well in Hyper. The end result was cusor movement in Hyper/tmux/vim was painfully slow.
I've really enjoyed Hyper so far. My only real gripe -- and it's kind of a big one -- is that you can't re-order tabs.
Not totally sure how thy ever fix this, since the title bar is not displayed -- meaning that dragging the tab area is thy only means thy have for letting users move the entire window.
I mean, that looks awesome. But there is one question: WHY? I mean what's the benefit of rewriting something in HTML/JS when we already have that natively build in every operating system?
21 comments
[ 3.0 ms ] story [ 59.0 ms ] threadSee TermKit for some more tought put into a graphically-enabled terminal: https://github.com/unconed/TermKit
notty seems to be trying to push that text-centricness as far as possible however
https://github.com/withoutboats/notty
This is the one VSCode uses. (But its just a frontend)
- you can override any output coming from the terminal and choose not to display it (in this case the "command not found" output is overridden)
- you can lay out an arbitrary `canvas` element on top and have complete freedom to style however you want.
The idea behind Hyper is that you can do everything as plugins. Instead of creating an experimental terminal like TermKit, my decision was to ship a _useful_ terminal and let it be arbitrarily and infinitely extended.
Disclosure: author of Hyper
With that in mind, it is bound to be somewhat underwhelming until some "killer plugins" appear. I've been thinking about IDE functions like "black screen" is implementing, for example: type a command and the available options and their meaning pop up.
I agree that my terminal shouldn't crash. I handle so many fundamental parts of my workflow in terminal so it has to be stable and efficient.
Hyper is split vertically 33/67 and horizontally 50/50. I run normal command-line stuff in the small panes (git, curl, etc), and my node/ruby servers in the larger.
I run tmux/vim in iTerm.
Something about my tmux, or vim setup didn't play particularly well in Hyper. The end result was cusor movement in Hyper/tmux/vim was painfully slow.
But my current setup works really well for me.
Not totally sure how thy ever fix this, since the title bar is not displayed -- meaning that dragging the tab area is thy only means thy have for letting users move the entire window.
See my other answer here: https://news.ycombinator.com/item?id=13516047
Working hard on this, and at some point hopefully you can't tell that it's a browser.