News for hackers. Stuff that matters.
Re:Show HN: Warp, a Rust-based terminal by buro9 on Tuesday April 05, 2022 @01:30PM (#30922044)
I'm not sure I'm ready to have SaaS models replace core utilities and tools locally.

> Announcing Warp’s Series A: $17M to build a better terminal

And just thinking about this... it's not clear to me what their moat will be as I suspect if there's a really compelling feature it will be available in OSS terminals quite quickly. Perhaps it's the product polish? But I'm not sure polish is what I want from a terminal, at least... it's not the top thing I want .

Re:Show HN: Warp, a Rust-based terminal by heroHACK17 on Tuesday April 05, 2022 @05:15PM (#30925147)
I wondered the same. Then I realized it sends out requests to googleapis, segment, and sentry. Imagine having data on every dev's terminal workflow? Ca$h.
Re:Show HN: Warp, a Rust-based terminal by OOPMan on Tuesday April 05, 2022 @06:42PM (#30926048)
Sounds more like a good way to get your product banned from a lot of workplaces.
Re:Show HN: Warp, a Rust-based terminal by eterm on Tuesday April 05, 2022 @06:58PM (#30926213)
A lot of workplaces don't even bother to ban grammarly, which is literally a keylogger*, this won't even be on their radar.

* I feel compelled to point out that Grammarly disagree with this definition because it doesn't send every single keystroke, just the ones in non-password text boxes.

Re:Show HN: Warp, a Rust-based terminal by edgyquant on Wednesday April 06, 2022 @12:38AM (#30928537)
Is grammarly not correct here?
Re:Show HN: Warp, a Rust-based terminal by bongobingo1 on Wednesday April 06, 2022 @02:38AM (#30929096)
If my plugin Passwordly, only sends the keystrokes inside password boxes, is or isn't that a key logger? It's only capturing a subset of your input, like Grammarly, so not a keylogger?

If the argument is, it's not a keylogger because it's not logging sensitive information, well I type plenty of sensitive information into non-password textboxes.

Re:Show HN: Warp, a Rust-based terminal by edgyquant on Thursday April 07, 2022 @03:53PM (#30949585)
I’d say passwordly also isn’t a key logger. By your definition every text editor would be a key logger. That may be the strict definition of a key logger but the commonly accepted meaning is different. A keylogger logs all keys regardless of the app being used or general use case. Often they are malicious as well but that doesn’t have to be the case.
Re:Show HN: Warp, a Rust-based terminal by nicoburns on Tuesday April 05, 2022 @02:15PM (#30922744)
I doubt their compelling features will be in OSS terminals any time soon. I’ve wanted a terminal that has a decent multi line editor for years, and there’s nothing out there.
Re:Show HN: Warp, a Rust-based terminal by andrewzah on Tuesday April 05, 2022 @02:31PM (#30922950)
Vim supports multiline editing and I'd imagine emacs does as well. In bash/zsh, <ctrl-x ctrl-e> opens up $EDITOR so you can use whatever you're accustomed to anyhow.

Most of these features are already available if one spends a bit of time configuring their terminal/shell.

Re:Show HN: Warp, a Rust-based terminal by kreetx on Tuesday April 05, 2022 @05:26PM (#30925256)
Is multiline editing popular/useful? Thus far, the only occasions I've seen it shown is when someone is demonstrating it.
Re:Show HN: Warp, a Rust-based terminal by tomxor on Tuesday April 05, 2022 @05:50PM (#30925490)
I use the visual-multi plugin [0] all day in vim/neovim.

I don't like using tons of plugins but multi cursor with with selective invocation like the ctrl-d of sublime etc was the main thing I missed when moving to vim. (I use visual block mode too but it's not the same thing).

https://github.com/mg979/vim-visual-multi.git

Re:Show HN: Warp, a Rust-based terminal by andrewzah on Tuesday April 05, 2022 @05:32PM (#30925312)
I'd say so, I find myself using it somewhat regularly.

It's pretty easy in vim once you learn how to use visual block mode. That or using Sed to replace text in a selection or the entire file.

http://paulrougieux.github.io/vim.html#Edit_multiple_lines

Re:Show HN: Warp, a Rust-based terminal by jzm2k on Wednesday April 06, 2022 @12:19AM (#30928427)
They are very useful! As a long time Vim user who switched to Kakoune[0] a while back, I didn't even realize I needed a good multiline cursor from my editor before it tried Kakoune. Highly recommend it!

[0] https://kakoune.org/

Re:Show HN: Warp, a Rust-based terminal by nicoburns on Tuesday April 05, 2022 @06:14PM (#30925769)
If you need to pass lots of arguments to a command it's super useful. Typically I don't do this because it's quite unwieldly with a standard readline editor, but I could if multiline editing was available!
Re:Show HN: Warp, a Rust-based terminal by chaxor on Tuesday April 05, 2022 @09:18PM (#30927279)
Put `set -o vi` in your .bashrc

That's all you need - you don't need a whole program that collects all of your information.

Re:Show HN: Warp, a Rust-based terminal by mplanchard on Tuesday April 05, 2022 @05:32PM (#30925317)
I use it not infrequently for crafting big ol bash pipelines to put into scripts, specifically via emacs’ `shell` terminal emulator.
Re:Show HN: Warp, a Rust-based terminal by achenet on Wednesday April 06, 2022 @04:15AM (#30929715)
Thank you for sharing this tip ^_^
Re:Show HN: Warp, a Rust-based terminal by zhengt on Tuesday April 05, 2022 @06:41PM (#30926044)
While this can be done in zsh/bash, it takes investment to understand how to use multiline specifically. And then once you leave the terminal, the same keystroke does not do anything for you.

One of Warp is that you don't have to think twice about it because it behaves similarly to text fields everywhere else on your computer.

In the terminal, I often have the feeling that personal computing revolution from Xerox PARC & Apple Computer never happened.

Re:Show HN: Warp, a Rust-based terminal by robryk on Tuesday April 05, 2022 @07:05PM (#30926287)
This works in everything that uses libreadline to accept user input (unless the binary has specifically configured library differently iiuc), so should work in all shell-like interfaces. You can customize the shortcuts in inputrc, likewise, for all libreadline-using binaries. By default, readline tries to be emacs-like. You can ask it to be vi-like, or reconfigure lots of its shortcuts to be similar to an editor you like. To be fair, "escape to real editor" is not a thing you usually do in an editor, so that will remain special.
Re:Show HN: Warp, a Rust-based terminal by mftb on Tuesday April 05, 2022 @02:52PM (#30923277)
This stuff has been in the major shells for years, through excellent editor integration. For emacs and vi it's pretty much free. If you want to integrate with a different editor, it's totally doable.

Most of the stuff sibling comment is referring to center around the feature:

'edit-and-execute-command' in bash. There is a similar incantation for zsh.

I summon it with, 'ESC v' in both.

Re:Show HN: Warp, a Rust-based terminal by nicoburns on Tuesday April 05, 2022 @03:53PM (#30924112)
If I open an editor then my scrollback history isn't visible (or is in a separate window). Maybe vim and emacs offer this, but that's a big commitment just for a terminal. Warp has GUI-grade editing (mouse support, etc) with things like multiple cursors in a very nice interface.
Re:Show HN: Warp, a Rust-based terminal by a5aAqU on Tuesday April 05, 2022 @04:22PM (#30924497)
Ctrl-z will put Vim to sleep. You can look at the history and then type `fg` to bring the Vim back to the foreground.
Re:Show HN: Warp, a Rust-based terminal by kreetx on Tuesday April 05, 2022 @05:33PM (#30925324)
In emacs a shell is like a text buffer where you can simply search or move around as you would do in a text file. To get command history you'd just execute `history` and then ctrl+s (find) it, or move to it with the cursor.
Re:Show HN: Warp, a Rust-based terminal by NoGravitas on Tuesday April 05, 2022 @04:50PM (#30924838)
So does Emacs. I kind of assume vim and neovim do too, these days.
Re:Show HN: Warp, a Rust-based terminal by mftb on Tuesday April 05, 2022 @04:45PM (#30924783)
Normally I would pull the command I need multi-line editing for back from shell history, using the search operator '!' and print predicate ':p' before invoking bash's 'edit-and-execute-command' on it. I suppose while in the editor then I might need history again, but I can't recall it being an issue.
Re:Show HN: Warp, a Rust-based terminal by oblio on Wednesday April 06, 2022 @03:44AM (#30929514)
Three words for 2 tests regarding these features:

1. discoverability

2. wide spread use.

Bash and zsh fail both tests.

Re:Show HN: Warp, a Rust-based terminal by oblio on Wednesday April 06, 2022 @08:26AM (#30931257)
I love how my previous comment is downvoted with no answer by I assume bash and zsh fanboys when these kinds of features are barely used by users, because they can't be easily found.

Use something like fish to see what real feature discoverability for a shell looks like.

And I say this as a zsh user that has waded through the mountains of obscure documentation to set it up. Don't fall into Stockholm syndrome and think that if you went through hardship, others should, too.

99% of bash/zsh discussion threads are someone going: "here is awesome feature I found" (where frequently that feature is something that should have been painfully obvious to notice) and then 100 replies: "that's so cool and useful, I never knew about it and I've been using bash/zsh for N > 5 years".

Re:Show HN: Warp, a Rust-based terminal by mftb on Sunday April 10, 2022 @12:50AM (#30974556)
I have no idea who downvoted you or why they did so. I'm seeing your reply for the first time. From what I can see, our priorities in our tools are different. Discoverability and widespread use of particular features are not near the top of my list. I have read the bash manual. For the tools I use most, I've found it to be a good investment, that has paid me great dividends.
Re:Show HN: Warp, a Rust-based terminal by a5aAqU on Tuesday April 05, 2022 @04:19PM (#30924447)
> a terminal that has a decent multi line editor for years

You can use ctrl-x ctrl-e in most terminals.

https://unix.stackexchange.com/questions/85391/where-is-the-...

Re:Show HN: Warp, a Rust-based terminal by anthk on Tuesday April 05, 2022 @06:45PM (#30926082)
>You can use ctrl-x ctrl-e in most terminals.

Shells, not terminals.

Re:Show HN: Warp, a Rust-based terminal by EuAndreh on Tuesday April 05, 2022 @04:15PM (#30924394)
In Bash:

    C-x C-e
This opens $EDITOR, and when you finish editing and close it, it runs the code.
Re:Show HN: Warp, a Rust-based terminal by root_axis on Tuesday April 05, 2022 @03:13PM (#30923562)
haha well "decent" is in the eye of the beholder, I'd argue that vim is not only "decent" but by far the best general purpose IDE available.
Re:Show HN: Warp, a Rust-based terminal by TheDong on Tuesday April 05, 2022 @04:01PM (#30924213)
> I’ve wanted a terminal that has a decent multi line editor for years, and there’s nothing out there.

You can go the other direction.

Install neovim. Run `:terminal`. optionally run `:help Terminal-mode` first so you can figure out how to get out.

Re:Show HN: Warp, a Rust-based terminal by chaxor on Tuesday April 05, 2022 @09:10PM (#30927221)
Doesn't `set -o vi` do this for you? Place it in .bashrc and you're good to go.

It's great to use this with awesomewm for windows management, and vimium for browser control. Then you can develop in vim, bash in vim, browse in vim, and switch windows with vim. You don't have to learn 10 different, unintuitive, and ridiculous hotkeys for each different program or level.

Re:Show HN: Warp, a Rust-based terminal by tasuki on Tuesday April 05, 2022 @05:14PM (#30925128)
I use pretty out of the box zsh with vi-mode and it... just works for multiline editing? I can simply move down and up with j/k...
Re:Show HN: Warp, a Rust-based terminal by jart on Tuesday April 05, 2022 @05:27PM (#30925264)
It depends how you define multiline but check out: https://github.com/jart/bestline
Re:Show HN: Warp, a Rust-based terminal by AdwinWhite on Tuesday April 05, 2022 @11:00PM (#30927999)
Multiline works out of box in fish shell. I'm not sure how terminal is relevant here.
Re:Show HN: Warp, a Rust-based terminal by sitkack on Tuesday April 05, 2022 @03:25PM (#30923710)
Terminals are largely owned by graybeard maintainers that aren’t interested in innovating the Unix command line. This is not a difficult change.
Re:Show HN: Warp, a Rust-based terminal by feanaro on Tuesday April 05, 2022 @06:16PM (#30925795)
> I'm not sure I'm ready to have SaaS models replace core utilities and tools locally.

This isn't something you can ever be ready for. It's so completely and obviously wrong. Just say no.

Re:Show HN: Warp, a Rust-based terminal by mritchie712 on Tuesday April 05, 2022 @01:36PM (#30922165)
The moat would be if teams depend on it for sharing workflows. Doing "teams" right on OSS is tricky, much easier to pull off in SaaS.
Re:Show HN: Warp, a Rust-based terminal by michlim on Tuesday April 05, 2022 @02:17PM (#30922776)
Warp engineer here.

FWIW, the Warp terminal will be free for individuals. We would never charge for anything a terminal currently does. So no paywalls around SSH or anything like that. The types of features we could eventually charge for are team features.

Our bet is that the moat is going to be the team features, like:

- Sharing hard-to-remember workflows

- Wikis and READMEs that run directly in the terminal

- Session sharing for joint debugging

Our bet is their companies are willing to pay for these. BTW, even these team features will likely be free up to some level of usage and only charged in a company context.

Re:Show HN: Warp, a Rust-based terminal by wildmanx on Tuesday April 05, 2022 @03:36PM (#30923868)
> The types of features we could eventually charge for are team features.

You can probably maximize community acceptance if you provide clients that do not use these features as actual FOSS and only start incorporating closed-source pieces for those features. With things like client keys etc to restrict server access.

A bit like the Chrome/Chromium thing was intended initially.

Re:Show HN: Warp, a Rust-based terminal by X-Istence on Tuesday April 05, 2022 @10:45PM (#30927916)
> - Sharing hard-to-remember workflows

Those get codified into ansible and deployed on CI/CD pipelines. This is an anti-feature. The day that someone suggests using a terminal to manage hard-to-remember workflows is the day I start a huge crusade to fix whatever process led to introducing yet another tool.

Re:Show HN: Warp, a Rust-based terminal by jbverschoor on Tuesday April 05, 2022 @02:50PM (#30923238)
> - Sharing hard-to-remember workflows = Make better scripts and put in CI

> - Wikis and READMEs that run directly in the terminal No thank you

> - Session sharing for joint debugging = That's more for development.. not for shell access

> Our bet is their companies are willing to pay for these. BTW, even these team features will likely be free up to some level of usage and only charged in a company context.

I actually don't want them. I migrated from many apps that do too much to apps that do one thing really well.

Re:Show HN: Warp, a Rust-based terminal by ThemalSpan on Tuesday April 05, 2022 @02:20PM (#30922824)
What would be the advantage over version controlled shell scripts?
Re:Show HN: Warp, a Rust-based terminal by steveklabnik on Tuesday April 05, 2022 @02:30PM (#30922944)
(Not affiliated with Warp but care about this particular thing)

Shell scripts implies, well, a particular shell. If everyone is on similar OSes, maybe that works for you, but as a Windows user, "pile of bash scripts" might as well be "doesn't work for you." I use a terminal for my daily work, but don't have bash installed on my machine.

That said, I haven't tried Warp yet specifically because it's Mac-only right now. Even within that context, Warp integrates with Bash, Zsh, or Fish, which do have their own extensions to POSIX shell, but at least you can rely on Bash being installed.

Re:Show HN: Warp, a Rust-based terminal by andrewzah on Tuesday April 05, 2022 @02:35PM (#30923011)
That would also now force everyone to use this proprietary product instead of whatever they're familiar with.

For mac <-> linux, posix-compliant scripts mostly work in my experience but you have to account for different versions of gnu utils. For linux <-> windows, if it's small you could just write a powershell script, or use something like python on both, no?

I fail to see how these features are nice enough to force people to use a proprietary terminal that, for now, is compatible with existing bash/zsh shells.

Re:Show HN: Warp, a Rust-based terminal by steveklabnik on Tuesday April 05, 2022 @02:46PM (#30923184)
Yes, that is true, but it does seem like that's what their strategy is. If you're using these collaboration tools at your job, you'd have to be using the product already. So that's less of a problem than it would be for say, scripts included with some sort of open source project.

My point is mostly that shell isn't cross-platform, and this is one way you could address that. But it's not a generalized solution, absolutely.

(and yeah, something like Python is better than trying to keep multiple of the same scripts in different languages, for sure. You can do it if you wanted though, if they're small and you're willing to commit to it, I'm not sure I've ever seen it really pulled off.)

Re:Show HN: Warp, a Rust-based terminal by iskamag on Tuesday April 05, 2022 @04:00PM (#30924196)
>shell isn't cross-platform

basically every operating system has a posix shell by default except windows, but it has been ported there multiple times, samba existed for decades and WSL is on the rise. It may sound a little more irritating but they deserve it for still running windows :p /hj (besides you can just host an ssh server)

Re:Show HN: Warp, a Rust-based terminal by steveklabnik on Tuesday April 05, 2022 @04:05PM (#30924268)
I mean, I could also tell you "Just download and run PowerShell, it's ported to Linux", but you also know that would make you feel like a second-class citizen, because you know it's not something as good as something that actually works on your platform in a real sense.
Re:Show HN: Warp, a Rust-based terminal by Fnoord on Tuesday April 05, 2022 @05:06PM (#30925047)
Nix(OS) already solves this problem.
Re:Show HN: Warp, a Rust-based terminal by steveklabnik on Tuesday April 05, 2022 @09:02PM (#30927151)
I cannot use Nix on my platform, and I’m not changing OSes.
Re:Show HN: Warp, a Rust-based terminal by Fnoord on Wednesday April 13, 2022 @09:12AM (#31014200)
Which platform do you use?
Re:Show HN: Warp, a Rust-based terminal by colonwqbang on Tuesday April 05, 2022 @03:01PM (#30923407)
Why would it be easier to port Warp to a new system compared to Bash, Python, Perl, etc.? These tools are widely used to automate workflows and are already ported to any system you would probably care to develop on.
Re:Show HN: Warp, a Rust-based terminal by steveklabnik on Tuesday April 05, 2022 @03:35PM (#30923844)
You aren't the one porting Warp, but you are the one porting the shell script.
Re:Show HN: Warp, a Rust-based terminal by colonwqbang on Tuesday April 05, 2022 @07:04PM (#30926270)
So programs/workflows written in Warp will be portable without much effort, in some way that an equivalent shell or python script isn't? Why do you think that?
Re:Show HN: Warp, a Rust-based terminal by steveklabnik on Tuesday April 05, 2022 @09:08PM (#30927199)
It seems like you’re grouping a bunch of things together and saying I have opinions about them that I don’t. Let’s break them out:

workflows I would assume to be portable, yes. It is an assumption. I generally expect program configuration to be mostly cross platform by default.

I’m not sure what a program written for a particular terminal would be, so I’m not sure if I’d assume portability or not.

Shells are not ubiquitous, even if they are available across platforms technically.

Python is truly cross platform and largely ubiquitous.

Re:Show HN: Warp, a Rust-based terminal by colonwqbang on Wednesday April 06, 2022 @02:08AM (#30928957)
Ok, maybe I misunderstand what a "workflow" is. Since we are talking about replacing shell scripts with "workflows", I assumed that they are a kind of programming facility of about similar power as shell scripts. But that may be incorrect.

> You aren't the one porting Warp, but you are the one porting the shell script.

It sounds like your are saying somthing like "Warp scripts/workflows require almost no effort to port, compared to the shell scripts they replace". I was interested to learn how this can be the case. Perhaps my interpretation was wrong.

Re:Show HN: Warp, a Rust-based terminal by steveklabnik on Wednesday April 06, 2022 @01:10PM (#30934843)
I may also be too; like I said, I haven't used Warp yet. Just read their docs. "Workflows" are described in their docs as effectively 'aliases with better docs that integrate with a search bar', and are defined in a YAML file. They don't actually show said YAML file, so I don't know how complex they are. If they give you the full power of the underlying shell, then yeah, you're back at the exact same problem, but if it's stuff like "invoke this program with this set of arguments," which is what their examples seem like, then I'd expect it to work with any shell as long as that program is installed.

> Perhaps my interpretation was wrong.

And perhaps mine is. The docs aren't in-depth and I don't own a Mac. But really, ultimately, "are workflows more portable" isn't a question I personally am wed to; it's that "shell scripts are only portable via UNIXes and there's a much bigger world out there" that I am, and I am hoping that workflows are more portable than shell scripts. In practice, they may be, or they may not be, but since they're in a layer above the shell, it's possible that they're not shell-specific.

Re:Show HN: Warp, a Rust-based terminal by zekrioca on Tuesday April 05, 2022 @08:33PM (#30926954)
Thats a good question. In the end Warp programs/scripts will be written in just yet another interpreted language.
Re:Show HN: Warp, a Rust-based terminal by alokedesai on Tuesday April 05, 2022 @02:54PM (#30923288)
That's a great question! Version controlled shell scripts are very useful (and in fact workflows in Warp can also be version controlled) but they still have a few problems: 1) Documentation--when a repo has a lot of shell scripts, it can be very difficult to know which command to run in certain situations. Even if each shell script has documentation, there's no way to find that documentation natively from the terminal itself. 2) Searching--you can only execute commands from the terminal based on the shell script name but there's no easy way to search for a script based on _what_ it does or any other metadata.
Re:Show HN: Warp, a Rust-based terminal by microflash on Wednesday April 06, 2022 @06:30AM (#30930464)
> - Wikis and READMEs that run directly in the terminal

Nushell can open READMEs natively and can admittedly work with Wikis through a plugin.

Re:Show HN: Warp, a Rust-based terminal by eloisius on Wednesday April 06, 2022 @03:00AM (#30929225)
$3.99/mo for the Pro plan let's you run as many concurrent processes as you want!