2

Infinitely Nested Window Management

 1 year ago
source link: https://amadeuspagel.com/p/infinitely-nested-window-management
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

Infinitely Nested Window Management

Infinitely Nested Window Management

Because any directory can contain subdirectories, the file system can be arbitrarily deep. This organization of nested directories and files is called a “hierarchical” file system. Again, though the advantages are obvious in hindsight, hierarchical file systems were not widely available before Multics and then Unix. For example, some file systems limited the depth of nesting; CTSS limited it to two levels.

— Brian Kernighan, UNIX: A History and a Memoir

If the idea of a filesystem limiting the depths of nesting sounds insane, imagine a filesystem where every level of nesting is conceptually different,  where there's one program that you use to manage some levels of nesting and another program for other levels of nesting, where you can't move things from one level to another.

That is the state of window management today:

Subscribe to Amadeus Pagel's Newsletter

Launched a year ago

whatever crosses my mind

1 Comment

"You can't turn a tab into a window, or a window into a workspace."

If I grab a tab in Safari, Firefox, or Chrome and drag it outside of the tab bar, it turns into a new window. If I drag a single-page window into another window's tab bar, it becomes a new tab; I can also drag a tab from one window's tab bar into another.

I hate Illustrator's single-window multi-tab mode so I keep it off but it works similarly. I can also full-screen that single window and there are some controls for arranging multiple sub-windows across it. Photoshop works similarly, some of Adobe's other programs also work similarly, some have no concept of even working on multiple documents at once, much less multiple windows/tabs for them. There's a whole workspace management layer inside AI and PS and programs like them, though. Lots of janky proprietary tiling window managers crammed into a single executable. I've been trying to learn Blender lately and I have no idea what its tiling window manager is inspired by but it sure works nothing like how I expect stuff to work on my Mac, for instance.

MacOS has tabs as part of the windowing system; I can drag from the tab bar of one Finder window to another to turn them into a multi-tabbed window, and drag the tabs back out. This seems to be an OS-level feature that must be enabled by the program, a lot of apps don't. Does Windows do this? Does your favorite Linux window manager? I have no idea. As far as I know, tabs first appeared in a now-dead web browser named Opera and quickly spread to other browsers, then other apps, then to OSs. If you had written a browser or Photoshop or whatever and added tabs before the operating system supported tabs, would you want to bother rewriting your tab system to support the different ways you have to talk to the window managers of MacOS, Windows, and/or Linux?

Some programs are simple little tools that can fit into a complex workspace. Some programs are entire workshops that offer workspace management. The state of window management today is a *lot* more complicated than you think it is.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK