I’m a long-time Ubuntu user who loves Nautilus for its simplicity, but I’ve run into a gap when managing chronological document sets, like legal correspondence (e.g., court letters and follow-ups). Currently, files in a single folder are displayed flatly (sorted by name/date/size), without visual hierarchy. This makes it hard to quickly grasp the sequence or relationships between files, especially PDFs.
I’d love to see a new “Hierarchical View” feature that allows users to create and visualize parent-child relationships within the same folder via intuitive drag-and-drop, without creating subfolders. This would store the structure as lightweight, hidden metadata (e.g., a .hierarchy.json file in the folder) and render it dynamically in the UI.
Use Case
For example, in a folder ~/Documents/CourtCase-XYZ/ with PDFs like:
2025-01-15_Initial_Letter.pdf
2025-02-01_Response.pdf
2025-02-15_FollowUp.pdf
I want to drag Response.pdf onto Initial_Letter.pdf to “subordinate” it, creating a visual tree: The child file indents slightly to the right (e.g., 20px), connected by a simple angled line or arrow (using Unicode like ├── or └─ for accessibility). This shows the chronological flow at a glance, collapsible for overview.
Key Features
Drag-and-Drop Subordination:
In List or Icon view, drag a file onto another to trigger a quick confirmation dialog: “Subordinate this file under [target]? (e.g., as follow-up)” with options like “Insert chronologically (by date)” or “Manual position.”
On confirm: Update the hidden .hierarchy.json (e.g.):
Render immediately: Use GTK’s TreeView for indentation and Cairo for lines/arrows. Support multi-level nesting (e.g., sub-follow-ups).
Toggle for Views:
Add a toolbar toggle button (e.g., “Tree View” icon) to switch between standard flat sorting and the hierarchical display.
Auto-sort by modification/creation date as default in hierarchy mode, with manual overrides.
Works for all file types, but prioritize PDFs/docs with thumbnails/previews in the tree.
Personalized Notes:
Right-click or long-press the toggle to open a simple text field: “Add explanatory note” (e.g., “This sequence: Initial court letter, my response, then their follow-up – deadline for next reply: March 1”).
Store in .hierarchy.json under “notes”; display as a tooltip or collapsible sidebar in the view.
Storage & Portability
Metadata in hidden .hierarchy.json (ignored by default, visible only with Ctrl+H).
No filesystem changes – fully portable. For sharing (e.g., email), add a “Share folder with hierarchy” option in right-click menu to copy the JSON to clipboard or attach it (recipient sees the tree if using Nautilus).
Why This Fits GNOME
This builds on existing per-folder view settings and file annotations, enhancing usability without complexity. It aligns with HIG for intuitive navigation, like Apple’s Finder columns but folder-contained. For power users, it enables quick overviews in workflows like legal/project docs.
What do you think? Is this feasible with current GTK4? Happy to discuss prototypes or clarify!
Question:
Why would an new system that would only work with Nautilus be more of an advantage to organizing files using normal folders?
You can already enable a similar behavior with folders by enabling the “Expandable Folders in List View” setting.
And if you need to preserve a hierarchy while for example sending it with mail, an classic archive (like ZIP or TAR) does the job as well.
And the benefit is that it works with basically any system out there.
Thanks for the quick reply and for pointing out the existing options – I appreciate the feedback, as it’s exactly what I hoped for in this discussion!
To clarify: My proposal isn’t about replacing folders or archives; it’s about enhancing the flat folder view for quick, visual overviews without creating subfolders. The “Expandable Folders in List View” is great for nested directories (love that it’s back!), but it requires physically moving files into subfolders, which adds clutter and friction for my use case: managing chronological sequences like legal PDFs (e.g., initial court letter + follow-ups) all in one folder. I want to drag a file onto another for instant visual hierarchy (indent + arrow), stored as hidden metadata – no reorganization needed.
ZIP/TAR is spot-on for sharing full structures cross-platform, but for daily work (adding a new doc, toggling views), it’s a bit like using a sledgehammer for a thumbtack: effective, but not seamless. My idea keeps everything flat by default (for fast scanning/sorting), with an optional toggle for the tree – and the metadata could even attach to emails without zipping.
Curious: Have you ever dealt with doc sets where subfolders feel overkill? What do you think about a non-destructive, metadata-driven approach like this for Nautilus specifically? Would love your thoughts!
This is more of the domain of a graph database manager than a normal file manager. You’d be better served with a graphical UI to the localseach indexer database that allows creating schemes, editing relationships between files, embedding metadata into relations, and having predefined search queries for quick navigation and retrieval. That way you can precode your exact workflow into a graph.
Thanks for the thoughtful reply, Kabushawarib – I see where you’re coming from, and a graph-based indexer like Recoll sounds powerful for heavy metadata workflows. It’s a cool suggestion for users deep into relational data!
That said, my pitch is more about a lightweight extension to Nautilus’ existing strengths (like tags and per-folder views), not a full graph DB. For my daily grind – juggling legal PDFs in a single folder without subfolder sprawl – I just want quick drag-to-subordinate (with indent/arrows), a toggle for the tree view, and optional notes right there in the UI. No need to switch apps or precode queries; it’s like adding a simple outline mode to keep the chronology glanceable, stored as hidden folder metadata.
Have you used something like Obsidian for files? It nails graph views, but I’d love that seamlessness baked into the file manager. What if we started minimal (just the drag/notes) and let extensions handle the graph-y bits later? Thoughts on feasibility for a GNOME newbie like me?