On Tue, Apr 25, 2017 at 11:35:24AM +0200, Arturo Borrero Gonzalez wrote: > On 25 April 2017 at 11:22, Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx> wrote: > > Hi Arturo, > > > > On Fri, Apr 21, 2017 at 12:30:24PM +0200, Arturo Borrero Gonzalez wrote: > >> Add a new option to nft to print set elements per line instead > >> of all in a single line. > >> This is useful when printing a ruleset with very big sets. > >> > >> The new option is -t/--elements. > >> > >> Annonymous sets/maps/concats are not affected by this. The default > >> behaviour is not changed. > >> > >> Example: > >> > >> % nft list ruleset -t -nn > >> table ip t { > >> set s { > >> type inet_service > >> elements = { 1, > >> 2, > >> 3, > >> 4, > >> 12345 } > > > > Can we do a more intelligent folding? Via TIOCGWINSZ we can obtain the > > number of columns so we can try to fit as many elements as possible > > without wrapping around. Instead of one element per line? I know what > > I'm asking is harder, but I would like that we explore this path > > before adding this. > > > > And I think we should do this by default, no need for an option. > > Unless you are a robot, you want an output that you can actually read > > without lots of lines wrapping around, eg. a very large sets with > > thousands of elements. > > Ok, by default then. > > Regarding a more intelligent output, the complexity increases quickly, > since it would require to 'parse' the set before printing it (you > know, knowing the element printed length, the terminal window size, et > all). I guess that doing this right may slow down the output a lot, > similar to what happens in math programs outputs (gnu octave). > > What about an intermediate way? > > if integers, print 4 o 5 per line. > if maps, contactenations, IPs or strings, print one per line Give a shot a let's see how this looks like. -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html