Skip to content

Feature Request: summary by extensions in trees #1208

@nim65s

Description

@nim65s

Hi,

Thanks for this project !

I'm looking for a way to get a more concise overview of a tree. This would be useful to avoid scrolling too much or even exceed shell history on big trees. It would also help drawing a less cluttered version of a tree in a documentation page, or a small enough one to fit on a slide.

I think we could regroup files by extensions, when multiple similar ones are found in same folder, eg. from:

.
├── CMakeLists.txt
├── doc
│  ├── book.toml
│  └── src
│     ├── bin.md
│     ├── lib.md
│     ├── meshes.md
│     ├── README.md
│     ├── SUMMARY.md
│     └── textures.md
├── include
│  └── my-project
│     ├── fwd.hpp
│     ├── meshes
│     │  ├── dump.hpp
│     │  ├── load.hpp
│     │  └── process.hpp
│     ├── my-project.hpp
│     └── textures
│        ├── dump.hpp
│        ├── load.hpp
│        └── validate.hpp
├── lib
│  ├── libmy_project.so
│  └── python3.11
│     └── site-packages
│        └── my_project
│           ├── __init__.py
│           ├── helpers.py
│           ├── meshes.py
│           ├── textures.py
│           └── my_project.so
├── pyproject.toml
├── README.md
├── share
│  └── my-project
│     ├── meshes
│     │  ├── base.stl
│     │  └── tool.stl
│     └── textures
│        ├── base.png
│        └── tool.png
└── src
   ├── lib.cpp
   ├── main.cpp
   ├── meshes
   │  ├── dump.cpp
   │  ├── load.cpp
   │  └── process.cpp
   └── texures
      ├── dump.cpp
      ├── load.cpp
      └── process.cpp

to:

├── CMakeLists.txt
├── doc
│  ├── book.toml
│  └── src
│     └── *.md x6
├── include
│  └── my-project
│     ├── *.hpp x2
│     ├── meshes
│     │  └── *.hpp x3
│     └── textures
│        └── *.hpp x3
├── lib
│  ├── libmy_project.so
│  └── python3.11
│     └── site-packages
│        └── my_project
│           ├── *.py x4
│           └── my_project.so
├── pyproject.toml
├── README.md
├── share
│  └── my-project
│     ├── meshes
│     │  └── *.stl x2
│     └── textures
│        └── *.png x2
└── src
   ├── *.cpp x2
   ├── meshes
   │  └── *.cpp x3
   └── texures
      └── *.cpp x3

I think this would also help to improve the signal/noise ratio in directories where hundreds of similar files are generated, while they are probably not what we are looking for, or at least not individually.

PS: This would also fit well with the --icons flag

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions