diff --git a/dserial-cli/src/commands/ReadCommand.vala b/dserial-cli/src/commands/ReadCommand.vala index f42ac4778da255676bdfeff190e6ab16df5cc6c2..8e5b16ab37029e45d194a3b05eb0ca85733a3019 100644 --- a/dserial-cli/src/commands/ReadCommand.vala +++ b/dserial-cli/src/commands/ReadCommand.vala @@ -56,7 +56,18 @@ public class ReadCommand : Object, Command } else { int rows; int cols; + if(!state.interactive) Readline.initialize(); Readline.get_screen_size(out rows, out cols); + if(rows == 0 || cols == 0) { + string? v = Environment.get_variable("LINES"); + if(v!=null) rows = int.parse(v); + v = Environment.get_variable("COLUMNS"); + if(v!=null) cols = int.parse(v); + } + if(rows == 0 || cols == 0) { + rows = 23; + cols = 80; + } int chars_per = 0; for(int i = 0; i < printers.length; i++) { chars_per += printers[i].width_per_char; @@ -97,7 +108,7 @@ public class ReadCommand : Object, Command stdout.printf(" "); printers[x].a(tmpbuf); } - stdout.printf("\n"); + if(display_fields != "s") stdout.printf("\n"); counter = 0; } }