diff --git a/include/indicators/terminal_size.hpp b/include/indicators/terminal_size.hpp index f75f10d..c2b92ed 100644 --- a/include/indicators/terminal_size.hpp +++ b/include/indicators/terminal_size.hpp @@ -2,11 +2,12 @@ #pragma once #include -namespace indicators { #if defined(_MSC_VER) #include +namespace indicators { + static inline std::pair terminal_size() { CONSOLE_SCREEN_BUFFER_INFO csbi; int columns, rows; @@ -18,10 +19,15 @@ static inline std::pair terminal_size() { size_t terminal_width() { return terminal_size().second; } +} // namespace indicators + #else + #include //ioctl() and TIOCGWINSZ #include // for STDOUT_FILENO +namespace indicators { + static inline std::pair terminal_size() { struct winsize size; ioctl(STDOUT_FILENO, TIOCGWINSZ, &size); @@ -29,6 +35,8 @@ static inline std::pair terminal_size() { } static inline size_t terminal_width() { return terminal_size().second; } + +} // namespace indicators + #endif -} // namespace indicators \ No newline at end of file