Provide a way to disambiguate/tag/color/rename tabs and windows
I often work with multiple directories that are somewhat tied: one directory contains data, one directory some code to process the data, one or two directories with results from running that code on that data. Since I am looking at one directory at time, I am happily using tabs to keep everything in the same window, conceptually representing the project I am working on.
Often, I am working on multiple projects each time, so I have one or more windows open, with multiple tabs.
The problem are that
- often directories have the same name, say "data/algebra", "code/algebra" and "results/algebra") so I will see "algebra" as the title for all the 3 tabs. Sometimes, this is confusing, especially if extra tabs are open for a given subtask.
- In addition, having multiple windows that look alike won't help switching quickly from one to the other. Multiple workspaces mitigate this, but they are not always convenient.
Nautilus/Files should allow to disambiguate tabs with the same name. One way could be, if names are the same, to draw some prefix until tabs are non ambiguous. For example, in my case, instead of seeing "algebra" i would see "data/algebra", "code/algebra" and "results/algebra".
Another way could be to allow to color/mark/rename: each tab could be right-clicked and colored, marked or renamed with a custom name that would persist until the color/mark/rename is cleared.
Coloring/marking could be useful also on windows-level: overwriting the default window color to easily differentiate the windows.
Benefits of the solution
Automatic disambiguation of tab names by including directory should be a decent solution that users grasp quickly and adds basically no overhead to user interaction, automatically providing benefits when required.
Selecting tabs and windows could be done faster and with less errors. Users are not required to color/mark/rename their tabs or windows, but users that wish to do so might benefit from it with little effort.
Automatic disambiguation of tab names requires some care in deciding what to keep on screen and what to eliminate. For example, in this case it is obvious:
/home/myself/projects/one/two/three/foo/code/ -> foo/code /home/myself/projects/one/two/three/bar/code/ -> bar/code /home/myself/projects/one/two/three/baz/code/ -> baz/code
but in this case it could be a bit ugly
/home/myself/projects/foo/one/two/three/code/ -> foo/.../code /home/myself/projects/bar/one/two/three/code/ -> bar/.../code /home/myself/projects/baz/one/two/three/code/ -> baz/.../code
I think that renaming tabs is not adding much complexity to the codebase and should be rather maintainable. It should boil down to what string to be used as tab title is selected.
Coloring or marking tabs as well as windows could some benefit, but is indeed a more complex solution which requires more code and more maintaining effort. In addition, it could clash with "how Gnome should look like" principles.