Skip to content

Commit 3d27443

Browse files
author
Brent Cook
committed
support flipping a table 90 degrees
from @sempervictus This allows displaying large attributes in a nicer way.
1 parent 1fe1824 commit 3d27443

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

lib/rex/ui/text/table.rb

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -221,6 +221,23 @@ def add_hr
221221
#
222222
# Returns new sub-table with headers and rows maching column names submitted
223223
#
224+
#
225+
# Flips table 90 degrees left
226+
#
227+
def drop_left
228+
tbl = self.class.new(
229+
'Columns' => Array.new(self.rows.count+1,' '),
230+
'Header' => self.header,
231+
'Indent' => self.indent)
232+
(self.columns.count+1).times do |ti|
233+
row = self.rows.map {|r| r[ti]}.unshift(self.columns[ti]).flatten
234+
# insert our col|row break. kind of hackish
235+
row[1] = "| #{row[1]}" unless row.all? {|e| e.nil? || e.empty?}
236+
tbl << row
237+
end
238+
return tbl
239+
end
240+
224241
def [](*col_names)
225242
tbl = self.class.new('Indent' => self.indent,
226243
'Header' => self.header,

0 commit comments

Comments
 (0)