Trees - फ़ाइल ट्री रेंडरिंग लाइब्रेरी ओपन सोर्स
(trees.software)- VSCode की फ़ाइल विंडो जैसी फ़ाइल/डायरेक्टरी संरचना को रेंडर करने वाली लाइब्रेरी
- उच्च स्तर की customization स्वतंत्रता और performance व flexibility पर केंद्रित डिज़ाइन
- automatic virtualization बिल्ट-इन, जो केवल स्क्रीन पर दिखने वाली rows को mount करके प्रोसेस करता है, इसलिए दसियों हज़ार items भी तेज़ी से render होते हैं
- Git status badge, drag and drop, नाम खोज·filter, custom context menu आदि सहित developer tool-स्टाइल ट्री UI के लिए ज़रूरी फीचर्स का व्यापक समर्थन
- keyboard navigation·focus management·ARIA का समर्थन, जिससे WCAG 2.1 मानक के अनुरूप accessibility डिफ़ॉल्ट रूप से उपलब्ध
- CSS variables, Shiki themes, density adjustment आदि के ज़रिए दिखावट पर बारीक नियंत्रण
- editor/code hosting tools के sidebar tree implementation में उपयोग किया जा सकता है
- मुख्य फीचर्स विस्तार से
flattenEmptyDirectories: केवल एक child वाले folder chain को एक row में मिलाकर tree flattening का समर्थनgitStatus: added·modified·deleted·renamed·untracked·ignored files पर Git status badge दिखाता है, और जिन folders में बदले हुए child items हों उनमें dot indicator अपने-आप दिखाता हैdragAndDrop: files·folders को दूसरे folder या root पर drag करके move करना, drop target hover पर अपने-आप expand होता है, औरcanDragcallback से कुछ paths को block किया जा सकता है- नया file·folder·rename·delete आदि के लिए custom context menu configuration का समर्थन
- search box के ज़रिए name·path आधारित तेज़ filtering,
hide-non-matches·collapse-non-matches·expand-matchesतीन modes का समर्थन minimal·standard·completeतीन built-in icon sets उपलब्धdensityoption(compact·default·relaxed) से row height·spacing को एक साथ समायोजित किया जा सकता है
2 टिप्पणियां
इसे इस तरह alias करके इस्तेमाल करेंगे तो सुविधाजनक रहेगा।
alias t='tree -N -C -L 2 -I "node_modules|cache|dist|test_"'
alias tt='tree -N -C -L 3 -I "node_modules|cache|dist|test_"'
alias ttt='tree -N -C -L 4 -I "node_modules|cache|dist|test_"'
alias tttt='tree -N -C -L 5 -I "node_modules|cache|dist|test_"'
काफ़ी मज़ेदार और उपयोगी लगने वाला open source है।