29 ms·
HyperTerm – JS/HTML/CSS Terminal
- pyre 10y agoHow well does it deal with copious amounts of text scrolling across the screen. It's been a while since I've used it, but IIRC Gnome Terminal had big issues with this for a long time (due to the underlying library that they were using).
- paulv 10y agoIt's really bad. Not as bad as gnome-terminal back in the day (it's been fixed for a while), but it definitely can't keep up with a 'find /usr'. (I'm running it on linux, ymmv).
- Neetpeople 10y agoWould you recommend this to a beginner? Hilariously I'm actually asking for a friend, I don't have a Mac.
- eridius 10y agoOS X comes with a built-in terminal (that's actually pretty good). There's no reason for a beginner to reach for any third-party terminal software.
- suyash 10y agoYes beginner should start with plain old bash IMO.
- ne0phyte 10y agoA terminal emulator is not a shell. Using bash has nothing to do with the decision whether you use the OS X Terminal or some third party terminal emulator.
- nathancahill 10y agoBesides iTerm2 maybe. Default config is very similar to the built-in OS X terminal.
- eridius 10y agoI would not recommend iTerm2 to a beginner. The iTerm developers believe in the kitchen sink approach to preferences, which is not very beginner-friendly. And there's not much reason to use iTerm2 in general anyway now that Terminal.app has mouse support, I'm only aware of a few relatively esoteric features that iTerm2 has that Terminal doesn't (support for colors outside of the 256-color palette, and built-in support for showing tmux panes as iTerm window splits).
- nathancahill 10y agoThat's why I said that the default config is fine for beginners. Don't even need to open the preferences window.
- masukomi 10y agopretty sure that iTerm2 for a beginner is pretty much identical to Terminal. At that stage don't know enough to leverage it's fancy capabilities so they don't get in the way and confuse you. When you're ready for them, they're there for you. In Terminal you have something that looks and works almost identical but when you want more you can't have it.
- dnzm 10y agoPersonally, on OSX I'd go with iTerm2 any time of the day.
- sdegutis 10y agoOver the built-in Terminal.app? Why?
- knodi 10y ago-_- another node.js term
- Zezima 10y agoyou're my hero
- rosalinekarr 10y agoThis looks very well executed and really cool, but I'm honestly really tired of all the node/electron terminals. In its favor, this project looks a lot more clean and less opinionated than that 'Black Screen' monstrocity.
- mej10 10y agoI haven't even looked at "Black Screen", but what makes it a monstrosity? It is just a piece of open source software, after all.
- rosalinekarr 10y agoIn my experience, it's very slow and clunky, but the real problem is that it attempts to impose a lot of styling and decoration _on top_ of the terminal. For example, the command prompt isn't just a command prompt, it has this silly chevron decoration with autocomplete functionality. It can probably be turned off in the settings, but I find it to be a really annoying default. It just assumes I don't have my own prompt how I want it or my own autocorrect system. I have to explicitly disable half the 'features' before I get anything actually useful to work with.
- Sir_Cmpwn 10y agoI'm tired of node/electron anything.
- codezero 10y agoI use two tools daily that are built on Electron and they are great. Not only that, but it's never obvious they run on Electron. I'm curious, what do you hate so much about it?
- Sir_Cmpwn 10y agoHow about the fact that your computer now has three enormous copies of chromium on it for no good reason?
- nathancahill 10y agoYou guys just can't stop making cool stuff can you? now.sh, now-serve, micro.. I'm not the biggest Node fan, but these are really well done. Execution on these ideas has always been 10/10.
- sotojuan 10y agoI'm a big fan of their markdown semi-renderer. Is that open source?
- nathancahill 10y agoYeah, I like that too. Just emailed them about it.
- masterj 10y agoGuillermo is also behind Socket.IO, Cloudup, and organizes JSConf Argentina
- posterboy 10y agothe video is a bit silly in the end
- mirekrusin 10y agoIt is outrageously silly but maybe that's the point - it carries a message that you can do whatever you want with it (and implies - without much effort, if you can do silly things like this). There is unexplored area sitting just right there. Imagine having easy access to ncurses replacement, jupyter kernels like output from any of your "console" tools - that would be awesome.
- posterboy 10y ago> It is outrageously silly but maybe that's the point exactly, I don't understand the downvotes. The parts I saw however, didn't show what you wish for. The video doesn't seem to have a slider, but click to skip or some. A visual indicator would be nice.
- dsl 10y agoThe folks who make HyperTerm might have something to say about your product naming... http://www.hilgraeve.com/hyperterminal/ http://www.hilgraeve.com/hyperterminal/ Edit: I'm surprised more people in the HN crowd aren't familiar with HyperTerm (Yes that is the name and what everyone called it for many many years) It was bundled with Windows up to 7, and is still used heavily in industrial control areas.
- sigzero 10y agoThat's "HyperTerminal" not "HyperTerm".
- Jtsummers 10y agoA very similar name for a product sitting in the same space (terminal emulator). That's generally an unwise decision as it can create confusion for both projects, and the one with the trademark (especially since this new one's name is a substring of the older project) is in a position to make a valid claim against the new project. If someone created a new project called Steem to deliver video games to end users[, would you] be surprised if Valve took issue with their choice of name? EDIT: Left out part of a sentence.
- digler999 10y ago> if Valve took issue isn't it true that companies have to take issue, otherwise they lose their trademark? I used to be angry when large corporations would sue a little guy or nonprofit over name squabbles, but then I heard that the big company can lose their trademark if they dont.
- parent5446 10y agoA while ago I wrote something similar to this as a school project, but instead of being a local terminal, it was for a remote server. There was a sort of virtual file system the user interacted with, with metadata stored in MySQL, as one does for school projects. The moral of the story is that I hated having a terminal in JavaScript for a remote server, so I have no idea why I would want one for my local computer.
- mashlol 10y agoI'm curious why you hated the fact that it was in JavaScript? Was it because it ran in the browser? Because this one probably can, but it runs natively by default as far as I can tell.
- parent5446 10y agoIt wasn't really the browser. In fact the fact that it even ran in a browser was pretty cool. It was just the lack of full terminal support, and how if I wanted to add even the most basic of features, it would take thousands of lines of code (this was before things really took off and there were libraries for everything, not that it makes it too much better). Instead I can make a terminal that's significantly more efficient and responsive, with a fraction of the amount of code, and without having to write any JavaScript, which is its own achievement.
- SomeCallMeTim 10y ago>Instead I can make a terminal that's significantly more efficient and responsive ...and that runs on exactly one OS, and doesn't support the 250k+ Node modules, and that doesn't support standardized plugins, and that can't open web pages locally... JavaScript hate is so 2010.
- tatterdemalion 10y agoI don't have any skin in this but I don't understand what it means for a terminal to "support the 250k+ Node modules," or any of the features you listed, honestly
- suyash 10y agoThis is bad ass job, congratulations. Like someone else mention in the comments, execution and idea you get 100/100 points.
- deleted 10y ago[deleted]
- Tloewald 10y agoThis makes me want to re-implemented "commando" from AUX/MPW (I've never understood why this idea didn't take off). If you don't know, when you typed an ellipsis after a command in AUX or MPW a dialog box would be displayed showing the most popular toggles and options for the command (and allowing graphical file-picking). When you clicked "ok" it would type the command for you, so it made the command line both easier to use and easier to learn. (I just downloaded and tried it out and lost my enthusiasm. There's no attempt to provide a proper GUI.)
- city41 10y agoWhat did you lose enthusiasm for? commando or HyperTerm? I've been toying with the idea of a "teaching terminal" for learning the command line as well, and building off of HyperTerm seems like a good approach.
- Jtsummers 10y agoA teaching shell might be more important. Something like what Reason does for OCaml, but done for the the unix command line. Use the model of something like is common with a lot of MUD clients, all text input occurs in a field at the bottom (look at tinyfugue). Below that have a set of autocomplete hints. This would be filled in based off of common usage, and knowledge of binaries avialable in the path, knowledge of the command line arguments of common tools (git-prompt.sh is really nice for getting my new-to-git coworkers started, for instance). This could be wrapped up in the terminal, but needs to be aware of the environment in which it's being executed which moves beyond the purview of most terminal emulators and into the area of the shell itself. EDIT: Rough ascii art illustration: +----------------------------------------------------+ | > cat foo.txt | | Hello, world! | | | //////////////////////////////////////////////////// | | +----------------------------------------------------+ | > ca | +----------------------------------------------------+ |cat | cac... | cal...| can... | can... | cap... | +----------------------------------------------------+ `cat` first because of frequency of use (in general) and recent use. Others are showing other matches of the currently typed value + one letter, ... indicating more than one option. You'd want usage statistics on common commands, and you'd need to assemble a database of command line options. Might be able to grab these from man/info pages, but formatting is likely inconsistent. Could at least get started that way. And you'd want to collect the users history to customize it. This'd be equivalent to the hints on many mobile OS keyboards. I could see this being pulled into the terminal, rather than the shell itself. But it'd still need information about the underlying environment (easy if local, hard if remote). How do terminal emulators on tablets handle keyboard input? Do any of them offer guided hints?
- ktamura 10y agoAs an Acme user, I find the extensibility feature very interesting: Once you are used to Acme's contextual (and programmable) handling of text, it's hard to go back to a normal terminal.
- MrTonyD 10y agoNever heard of Acme -- can you elaborate?
- netghost 10y agoIt was an editor for Plan9. Here you go: https://en.wikipedia.org/wiki/Acme_(text_editor) https://en.wikipedia.org/wiki/Acme_(text_editor)
- stonogo 10y agoIt still is. It also runs on Macos, Linux, Windows, and BSD.
- MrTonyD 10y agoThanks...followed the Wikipedia link to the Rob Cox demo video. Mind blowing to have an editor as an OS filesystem that can intercept OS events. If I hadn't spent the last 20 years learning vi I would grab a copy and give it a try.
- SwellJoe 10y agoRuss Cox, not Rob Cox. You may be intermingling Rob Pike and Russ Cox, who are both involved in Acme.
- jabl 10y agoYeah, plan 9 did a lot of cool things and fixed many of Unix fundamental warts. Taking the "everything is a file" much further, and namespaces as a fundamental primitive rather than something bolted on afterwards, for starters. Alas, too little too late, it seems.
- nikolay 10y agoYet another "thin" client...
- dgquintas 10y agoAnother JS terminal emulator, https://chromium.googlesource.com/apps/libapps/+/master/hterm https://chromium.googlesource.com/apps/libapps/+/master/hter...
- hugozap 10y agoHyperTerm uses hterm underneath.
- marknadal 10y agoBored at first, then was forced to smile with glee. Now I must download it, even though I was originally poo-pooing "another terminal" in my head. Well done, well done.
- jp_sc 10y agoCodePicnic https://codepicnic.com/ https://codepicnic.com/
- enraged_camel 10y agoI think HyperTerm is free. And open-source.
- dejawu 10y agoAnybody remember TermKit[0]? This was my first thought when I saw "JS/HTML/CSS Terminal". It was built on WebKit (five years ago, before the everything-in-JS craze really began) and had a lot of really promising features like smart MIME-type support... and then development sort of stopped. I'd love to see the concept revisited with present-day technologies and platforms. [0]: https://acko.net/blog/on-termkit/ https://acko.net/blog/on-termkit/
- vbit 10y agoHeh yes. There was also a mozilla XUL based terminal many years ago - can't remember the name though.
- sime2009 10y agoXMLterm The only article about is that I've ever found or read is this one: http://www.xml.com/pub/a/2000/06/07/xmlterm/ http://www.xml.com/pub/a/2000/06/07/xmlterm/
- Per_Bothner 10y agoXMLterm. DomTerm http://domterm.org http://domterm.org was very much inspired by XMLterm. Please check it out.
- jsprogrammer 10y agoEverything-in-JS started more than five years ago. Nine years ago (almost to the day) Atwood formulated his law [0]. [0] https://blog.codinghorror.com/the-principle-of-least-power/ https://blog.codinghorror.com/the-principle-of-least-power/
- vanderZwan 10y agoHe did a follow-up on Reddit explaining what happened: https://www.reddit.com/r/programming/comments/137kd9/18_months_ago_termkit_a_nextgeneration_terminal/ https://www.reddit.com/r/programming/comments/137kd9/18_mont...
- CGamesPlay 10y ago
- hugozap 10y agoI'm trying it and it feels great. The ability to easily extend it is huge!
- dema_guru 10y agoCool
- pikachu_is_cool 10y agoHopefully this inspires someone to make a Lua/Python scriptable terminal. I'm not a big fan of the web stack. This is a pretty cool concept though.
- SwellJoe 10y agoES6 fixes most of my biggest problems with JavaScript as a language, and adds a few things I didn't think of, but are nice. Generators, destructuring assignment, nicer class syntax, etc. I found this series of blog posts helpful: https://hacks.mozilla.org/category/es6-in-depth/ https://hacks.mozilla.org/category/es6-in-depth/ Sure, there's still a lot of old code out there to read, but I would guess this project is using mostly modern patterns. Most Node projects do.
- pikachu_is_cool 10y agoYeah I'm sure JS is better than before but I just don't like the web stack in general. I don't like using CSS/HTML/DOM.
- 627467 10y ago"Builds for Windows and Linux are coming very soon" I can't wait. Anyone knows how I could build this on windows?
- guessmyname 10y agoFollow the instructions from the GitHub page [1] the ones under the "Contribute" title, that will be enough for you. If you don't know how to work with a Node.JS project then wait for their official Windows release. [1] https://github.com/zeit/hyperterm#contribute https://github.com/zeit/hyperterm#contribute
- OhSoHumble 10y agoTheir installation notes involve executing a bash script. Also, the node package `child_pty` is part of the dependency tree - which doesn't support Windows. This is all totally fine but now I'm genuinely curious about how this builds on Windows.
- cdnsteve 10y agoWould be interesting to see a Hypermedia API explorer.
- cocktailpeanuts 10y agoI tried to use this but got stuck when i opened up vim with NERDTree, it wouldn't expand folders...
- juandazapata 10y agoIt definitely looks cool, but may I ask what's the problem that is being solved here? Does it support tmux or at least window splits? Which problems does this solve that the regular Terminal didn't solve? I'm kind of lost here, "I need some fireworks while I type in my terminal" is not a problem that I have often to be honest.
- chadlavi 10y agomy guess is "a terminal that a person who is more comfortable with html, js and css than bash will like" I must say, using basically a css stylesheet to control how your terminal looks and behaves does feel a lot more user friendly than a PS variable.
- NickBusey 10y agoI just tried it, and yes, tmux works. Also, it seems really fast. Liking it so far. Especially after iTerm versioning jumped the shark.
- disease 10y agoIf they continue to improve on it and release it on Windows, it will solve the "no good terminals on Windows" problem.
- webXL 10y agoInitial commit 15 days ago?? I think I'll hold off on any sudo commands or special permissions requested by the OS. Looks super cool though. Seems like a no-brainer with Electron. Edit: I take that back, since it largely leverages hterm by the Chromium team, looks like the real first commit was in 2011 or so.
- benbenolson 10y agoThere was another project that's extremely similar to this posted a week or so ago, and it got a lot of flak for existing; I don't think very many commenters agreed with its existence (except, perhaps, as an educational exercise for the programmer). That project was posted here: http://rungoterminal.com/ http://rungoterminal.com/ This, however, is executed and presented much better than that other project, and catered towards the correct crowd (web developers using Mac OS X). Although I would never use either, I think that it just goes to show that presentation is extremely important: these two terminal emulators could very well be the exact same implementation (or at least very similar), and far less people would use it because they've chosen the wrong demographic. Also because of the clean presentation, it creates a perception that HyperTerm is executed more cleanly than Rungo Terminal, even if there are no facts to back that belief.
- nathancahill 10y ago> "it got a lot of flak for existing" Oh wow, you weren't kidding: https://news.ycombinator.com/item?id=12046778 https://news.ycombinator.com/item?id=12046778
- johnfn 10y agoThese comments really make me ashamed of the HN community.
- Klathmon 10y agoAnything related to javascript or web technologies brings out that kind of response in some way, but sometimes the HN crowd takes it overboard.
- whamlastxmas 10y agoI appreciate that the HN community doesn't feel the need to sugar coat something that is obviously bullshit. If you don't want people to critique your work, don't post it on discussion forums.
- overcast 10y agoAwesome. However there is just no way someone developing a terminal, hasn't heard of HyperTerminal. It was bundled with every Windows OS. Good luck with that naming cease and desist :/
- webXL 10y agoimgcat[1] is one of my favorite terminal innovations as of late. I thought I'd take a long shot and see if it worked since that functionality seems like it would be simple for a browser-engine-based terminal to handle, but sadly no-go. I smell pull request. [1]https://www.iterm2.com/documentation-images.html https://www.iterm2.com/documentation-images.html
- riskable 10y agoGate One (web-based terminal) has had this functionality for years: https://github.com/liftoff/GateOne/ https://github.com/liftoff/GateOne/ Just 'cat someimage.jpeg' or 'cat someimage.png' and it'll display it right there in the terminal. Works great if I do say so myself (I wrote it =).
- webXL 10y agoI think I've come across this before. So it's a browser/web server solution, right? Seems like there could be some performance/security issues. Seems pretty full featured, though. Nice work!
- riskable 10y agoHundreds of thousands of users for three years now and there's yet to be any reports of a security issue. The closest thing was a very mild information disclosure issue with the bundled ssh_connect.py script... Because it imported readline you could hit ESC twice and see a listing of the files in the same directory as the script (one other file). Couldn't do anything with that info though, haha. Regardless, I fixed that years ago and there's been nothing since.
- gnachman 10y agoI couldn't get this to work reliably. The tty messed with cr and lf characters unpredictably. I'm curious if you found a way around this issue.
- riskable 10y ago
- laktak 10y agoFor anybody with Firefox/Autoplay disabled, you need to right click and select play to see the demo...
- guard-of-terra 10y agoAs a long Konsole user, I wonder if it supports unlimited logging, how it will react to 500M of console backlog, what's up with scrolling/overflow at all? In my experience, terminal is one of the trickest to get right under extreme conditions. What's with tabs also? :)
- ixtli 10y agotiny nitpick for a really cool thing: it's not based on JS/HTML/CSS, it's written in or build on JS/HTML/CSS.
- disease 10y agoMy first reaction is: "This could be the VS Code of terminals". For those stuck on Windows, where the choice in terminals is pretty bad AND more and more Windows dev is done from the command line (hello 'dotnet'), this could be very welcome.
- blackguardx 10y agoMicrosoft announced support for Linux/Unix tools in Windows 10 awhile back. You can get bash if you want. https://msdn.microsoft.com/en-us/commandline/wsl/about https://msdn.microsoft.com/en-us/commandline/wsl/about
- colemickens 10y agobash might be there, but the terminal emulation is still pretty bad. (I'm a week or two behind on preview builds, but I still couldn't run a bunch of ncurses/tmux/mosh type apps). conhost.exe is a shame and it's kind of indicative how much joy it was just to get some basics (like QuickEdit by default, etc).
- NobleSir 10y agoFor windows, conemu ( http://conemu.github.io http://conemu.github.io ) is a bit more annoying to configure than terminal.app, but works just as well, and even has the more powerful built in features like tmux. Of course you have to run something like msys2 (or maybe the bash for windows, but I haven't tried it yet) to get the "unix" environment.
- winter_blue 10y agoIs there any way to use HyperTerm as an embeddable terminal emulator in your own web apps?
- RobertKerans 10y agoThat's gonna be one staggeringly heavyweight web app.
- magerleagues 10y agoI'm excited to see if a community arises to build and share themes for HyperTerm. I switched from iTerm, and will reply back to this comment if I switch back.
- iLemming 10y agooh wow. This is awesome! Now I desperately need a Clojurescript plugin for this.
- masukomi 10y agoCan anyone comment on how this compares to Black Screen ? https://github.com/shockone/black-screen https://github.com/shockone/black-screen
- jolux 10y agoBlack Screen is a shell as well as a terminal. This is just a terminal.
- drinchev 10y agoIf that has the iTerm speed it will be my new terminal app. It looks awesome! Can't wait to see the ecosystem around it.
- sdegutis 10y agoIt assumes I have npm installed. Probably shouldn't: https://github.com/zeit/hyperterm/issues/134 https://github.com/zeit/hyperterm/issues/134
- kzahel 10y agoHow is this different from crosh / hterm?
- tedmiston 10y agoRendering a webpage in the shell is neat. The concept of a terminal wrapped in a browser has a lot of potential. It also seems like iTerm is moving in the direction of richer media integration with recent features like inline image rendering.
- decayy 10y agoThis would work so well with Atom
- vortico 10y agoJust an idea: The only windowed applications I use are a terminal (st), my text editor (Atom), and a browser (Firefox). Suppose I switched to HyperTerm, Atom, and Chromium. I would have three copies of the Chromium renderer and V8 interpreter loaded in memory. Is there a project that merges these things into a single daemon, to improve individual app startup time, save memory, and reduce the binary size from 42 MB (for HyperTerm) to the size of only its own components?
- curioussavage 10y agoAll you have to do is enter a url and it will render web pages. It uses redux and lets extension developers modify any action basically letting them modify anything, so an extension that makes a nice browser is definitely possible. Also I'm sure you could embed Atom into it too. Basically my holy grail , an entire web dev environment in one app/window with tabs..
- xena 10y agoBut you can already have this pretty trivially in emacs: http://puu.sh/q3hpW/2933a20e84.png http://puu.sh/q3hpW/2933a20e84.png
- 67079F105EC467B 10y agoBut then you are using emacs...
- xena 10y agoAt least it's not written in Javascript.
- dkns 10y agoYou can also render full webpages using webkit: https://www.reddit.com/r/emacs/comments/4srze9/watching_youtube_inside_emacs_25/ https://www.reddit.com/r/emacs/comments/4srze9/watching_yout...
- jetblackio 10y agoLooks really cool, but honestly the input lag is noticeable when compared to something like iTerm. Not sure that's something I could get used to. Is that just a limitation of Electron?
- tshadwell 10y agoSee also: https://github.com/shockone/black-screen https://github.com/shockone/black-screen
- 67079F105EC467B 10y agoCtrl-a seems to be selecting all, how am I suppose to get out of a screen if I can't Ctrl-a d? This seems like a oversight.
- GreaterFool 10y agoI think it would be great if we could go beyond text in terminal applications. Think Jupyter notebooks but inside terminal. It would be great if terminal window was just an OpenGL surface that one could draw on, with good API for doing just text. Something as simple as "put this interactive plot in this 20x20 area there" would make a big difference for a lot of programs and scripts I'm writing. At the moment if I want something like that I pipe the data through websocket to the browser and that's OK but I'd rather stay in the terminal.
- Per_Bothner 10y agoThat is the goal of the DomTerm http://domterm.org http://domterm.org project. I see little point in a JS-based terminal emulator unless you can "print out" graphics, images, or general HTML. DomTerm's goal is "full" xterm compatibility and embeddable graphics, rich(er) text, etc.
- S3curityPlu5 10y agohttp://www.trademarkia.com/trademarks-search.aspx?tn=hyperterm http://www.trademarkia.com/trademarks-search.aspx?tn=hyperte... hyperterm Search Apply Now! This name is not found in our database of U.S. trademarks, so Apply for it Now. Check off countries you wish to trademark your name/slogan in.
- daveheq 10y agoWhy not just call it JSTerminal?
- rzhikharevich 10y agoPersonally, I dislike the march of the web technologies towards the desktop. I think, we forgot what they're intended to be used for.
- damptowel 10y agoFinally, I've always wanted a terminal with particle effects!