diff --git a/cudir.cc b/cudir.cc index d1ac35c..11b0bf2 100644 --- a/cudir.cc +++ b/cudir.cc @@ -35,7 +35,7 @@ getEntries( const std::filesystem::path where ) namespace C { - constexpr int dirwidth= 9; + constexpr int sizeWidth= 14; constexpr int dateWidth= "82-12-21"s.size(); constexpr int timeWidth= "12:34"s.size(); } @@ -50,7 +50,7 @@ main() const auto widest= std::max_element( begin( entries ), end( entries ), []( const auto &lhs, const auto &rhs ) { return lhs.name.size() < rhs.name.size(); } )->name.size(); - const int rowWidth= widest + C::filePadding + C::dirwidth + 3 + 10 + 2 + C::dateWidth + 1 + C::timeWidth; + const int rowWidth= widest + C::filePadding + C::sizeWidth + 2 + 10 + 2 + C::dateWidth + 1 + C::timeWidth; std::cout << "[1;36;96m"; for( int i= 0; i < rowWidth; ++i ) std::cout << "\u2500"; @@ -58,21 +58,26 @@ main() for( int i= 0; i < rowWidth; ++i ) std::cout << "\u2500"; std::cout << "[m" << std::endl; + std::size_t fileCount= 0; + std::size_t totalSize= 0; + std::size_t totalStorage= 0; bool side= false; for( const auto &entry: entries ) { + ++fileCount; + totalSize+= entry.size; std::cout << format_entry( entry, widest ) << "[m "; if( entry.is_dir ) { std::cout << "[1;35;95m"; - std::cout << std::setw( C::dirwidth - 2 ) << std::setfill( ' ' ) << std::right << "