Live data from Hacker News

Zellij – A Terminal Workspace and Multiplexer

zellij.dev

151–160 of 248 posts

Re: Zellij – A Terminal Workspace and Multiplexer

#151

You have a problem and you need a configuration language, so you pick YAML. Now you have two problems. Take a leaf out of Rust's book and use something simple and sane like TOML, YAML is a mess. See: https://github.com/cblp/yaml-sucks Otherwise this looks like a great project, please don't ruin it with YAML.

YAML is the worst, kill it with fire. Whether TOML is decent alternative is debatable though, i'd prefer EDN.

I feel like I read almost the exact same comment after the honeymoon of every new file format used for configuration.

Re: Zellij – A Terminal Workspace and Multiplexer

#152

Earlier quoted context omitted.

I think JSON would be perfect if it a) allowed comments, and b) had multi-line strings. It has exactly five data types, each with very clear and distinct notation that nests consistently (the top level isn't somehow "special" and there's no messing with significant whitespace). Only two collection types: keyed, and unkeyed. In some sense it feels like the apotheosis of untyped data-modeling.

a) reminds me so much of this classic https://thedailywtf.com/articles/the-inner-json-effect “Tell us what you did to JDSL,” one of the VP’s asked. “I don’t think I did anything,” Jake answered. “I’ve only been here two weeks, trying to learn JDSL and how the customer portal works. I don’t even know how to deploy it!” “You made a few commits to Subversion!” Tom shouted. “Well, yes. I added a few code comments, trying…

That 100% has to be fake. I NEED it to be fake. Are there production systems that work like this? Du they have one "rockstar" developer who does stuff like this?

Re: Zellij – A Terminal Workspace and Multiplexer

#153
post #150

I see a lot of projects on here where the tagline is that they're written in Rust. Shouldn't that be completely opaque to the user? I don't have any idea what programming language most of the software I use is written in. If it's faster or more stable than tmux, shouldn't that be what's advertised, rather than implementation details? Reading the page, what catches my eye is the webasm plugin system (although it's not…

>Shouldn't that be completely opaque to the user?

No necessarely, because app being written in Rust and Go is actually a feature for the user, it means the entire app is a single executable with a decent runtime performance.

Re: Zellij – A Terminal Workspace and Multiplexer

#154
post #150

I see a lot of projects on here where the tagline is that they're written in Rust. Shouldn't that be completely opaque to the user? I don't have any idea what programming language most of the software I use is written in. If it's faster or more stable than tmux, shouldn't that be what's advertised, rather than implementation details? Reading the page, what catches my eye is the webasm plugin system (although it's not…

I think advertising the language is important. Rust is fairly strict which improves stability. It also means that I'm not downloading some bloated electron crap.

Re: Zellij – A Terminal Workspace and Multiplexer

#155
post #74
post #46

Earlier quoted context omitted.

Why not have your software be universally accessible & online? What is the appeal in having software that is attached to a single system, single OS, & offline?

This seems like a very baroque alternative to tmux and ssh

Let's consider: I'm at my parents, or a friends house. I need to log in to do something. My options are:

A) download a terminal emulator + ssh application onto their computer & run that, flooding the screen with some unknown terminal application.

B) opening a web page & logging in to a Zellij or TermKit or whatever session.

Which do you think will seem more baroque to them? The web is an obvious, much improved way to do almost all software. It's online, universally accessible. A lot of stuck, old-fashioned-thinking in this thread. I'm a ssh + tmux (or more often ssh + dtach/vim) user myself, but it's clear to me this has serious disadvantages, that it's not nearly as accessible, as on tap as it could be.

Re: Zellij – A Terminal Workspace and Multiplexer

#156
post #150

I see a lot of projects on here where the tagline is that they're written in Rust. Shouldn't that be completely opaque to the user? I don't have any idea what programming language most of the software I use is written in. If it's faster or more stable than tmux, shouldn't that be what's advertised, rather than implementation details? Reading the page, what catches my eye is the webasm plugin system (although it's not…

> Shouldn't that be completely opaque to the user?

That would have been nice indeed. However many languages use lots of memory and are a bit slow, or are security-dangerous like C. It's nice to know, then, that this app likely uses barely any memory at all, and is as fast & keyboard-responsive as it can be, and harder to hack — Rust. (Assuming it is implemented in a good way :- ))

Re: Zellij – A Terminal Workspace and Multiplexer

#157
post #143

I've been using tmux for quite a while, though at a fairly casual level. The first thing I noticed is that this interface is discoverable - it shows me what I can do, which is incredible and makes me want to use it. The main reason I've been a casual tmux user and not an advanced one despite using it for years, is because every time I want to try something new I have to google if it's possible. The second thing I not…

> The second thing I noticed is that it uses ctrl-r as a core shortcut. Mega problem: ctrl-r is a built-in bash feature which I use every day to recall previous commands. This makes me think I can't use this tool at all.

In fairness, ctrl-a (screen default) and ctrl-b (tmux default) are also super useful readline shortcuts in bash (c-a = go to beginning of line, c-b = back one character).

EDIT: Sorry, I just realized - ctrl-r isn't a prefix, it's a shortcut, isn't it? And they have lots more? Yeah, that's ... a pretty questionable approach; it'll interfere with lots of things.

Re: Zellij – A Terminal Workspace and Multiplexer

#158
post #149
post #145

Earlier quoted context omitted.

You can lock the interface with ctrl-g and then all keys pass through.

See that's also interesting, thanks for the heads up. I saw "lock" previously and pressed it, and it did something besides what I expected. When I think lock, I think it's literally locking the interface in some way so someone can't interact with the software, including myself unintentionally. That's what it means in Windows, MacOS, and even tmux. I would consider just starting out "locked" but change the paradigm. I…

Keybindings are a hard problem. Doubly so when you're a wrapper that has to also not collide with everyone else's keybindings. :)

The idea was that users should spend most of their time in "normal" mode, deferring to "locked" mode only for cases like you mentioned (ctrl-r in bash or in vim). The modal ergonomics are built on that.

I'd ideally like to find one word that describes locked mode better than "locked", which I agree is not ideal. I spent quite some time thinking about it and asking others, but most of us are not native English speakers - so maybe there's something obvious we're missing. :)

Re: Zellij – A Terminal Workspace and Multiplexer

#159
post #75

You have a problem and you need a configuration language, so you pick YAML. Now you have two problems. Take a leaf out of Rust's book and use something simple and sane like TOML, YAML is a mess. See: https://github.com/cblp/yaml-sucks Otherwise this looks like a great project, please don't ruin it with YAML.

YAML sucks but so does TOML, especially when it comes to nested data structures like the layout.yaml shown on the front page. There are no good configuration languages in existence and there never will be. We have rejected Lisp/sexp so now we must suffer endlessly.

Have you looked at Cuelang [1] as a configuration language or source of truth?. It's still new but it's a superset of JSON but attempted to combine data/schema into one and reject inheritance and replace with validation instead.

[1] https://github.com/cuelang/cue/tree/master/doc/tutorial/basi...

Re: Zellij – A Terminal Workspace and Multiplexer

#160
post #150

I see a lot of projects on here where the tagline is that they're written in Rust. Shouldn't that be completely opaque to the user? I don't have any idea what programming language most of the software I use is written in. If it's faster or more stable than tmux, shouldn't that be what's advertised, rather than implementation details? Reading the page, what catches my eye is the webasm plugin system (although it's not…

Advertising the language could attract contributors to the project. Especially true for a newish language that is just starting to gain widespread traction.
Post reply on HN