| 1339 | } |
| 1340 | |
| 1341 | string ShellState::GetSystemPager() { |
| 1342 | const char *duckdb_pager = getenv("DUCKDB_PAGER"); |
| 1343 | |
| 1344 | // Try DUCKDB_PAGER first (highest priority for env vars) |
| 1345 | if (duckdb_pager && strlen(duckdb_pager) > 0) { |
| 1346 | return duckdb_pager; |
| 1347 | } |
| 1348 | |
| 1349 | // Try PAGER next |
| 1350 | const char *pager = getenv("PAGER"); |
| 1351 | if (pager && strlen(pager) > 0) { |
| 1352 | return pager; |
| 1353 | } |
| 1354 | |
| 1355 | // No valid pager environment variable set, use platform default |
| 1356 | #if defined(_WIN32) || defined(WIN32) |
| 1357 | // On Windows, use 'more' as default pager |
| 1358 | return "more"; |
| 1359 | #else |
| 1360 | // On other systems, use 'less' as default pager |
| 1361 | return "less -SRX"; |
| 1362 | #endif |
| 1363 | } |
| 1364 | |
| 1365 | bool ShellState::ShouldUsePager() { |
| 1366 | if (out != stdout || !stdout_is_console || !outfile.empty() || !stdin_is_interactive) { |