From 46983ee07a5845fdb2c55ab4f2dd88f6b923fb85 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Fri, 7 Jan 2022 05:35:44 +0000 Subject: dtas-console: add 'i' toggle to show comments (metadata) This can be useful in the face of non-descriptive filenames. --- bin/dtas-console | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/bin/dtas-console b/bin/dtas-console index 6172863..0e762bd 100755 --- a/bin/dtas-console +++ b/bin/dtas-console @@ -35,6 +35,7 @@ if (rg = cur["rg"]) && (rg = rg["mode"]) else rg_mode_i = 0 end +show_info = false def update_tfmt(prec, tsec) if tsec @@ -208,6 +209,27 @@ begin Curses.addstr(extra.join(' ')) pre_mute_vol = cur_vol if cur_vol != 0 + if show_info && current && comments = current['comments'] + Curses.setpos(lineno += 1, 0) + Curses.clrtoeol + Curses.addstr('comments:') + comments.each do |k,v| + v = v.split(/\n+/) + k = k.dump if /[[:cntrl:]]/ =~ k + if first = v.shift + Curses.setpos(lineno += 1, 0) + Curses.clrtoeol + first = first.dump if /[[:cntrl:]]/ =~ first + Curses.addstr(" #{k}: #{first}") + v.each do |val| + val = val.dump if /[[:cntrl:]]/ =~ val + Curses.setpos(lineno += 1, 0) + Curses.clrtoeol + Curses.addstr(" #{val}") + end + end + end + end show_events(lineno, screen, events) Curses.refresh # draw and wait @@ -277,6 +299,9 @@ begin interval = 1.0 / 10 ** prec_nr end when 27 # TODO readline/edit mode? + when 'i' + show_info = !show_info + Curses.clear if !show_info else Curses.setpos(screen.maxy - 1, 0) Curses.clrtoeol -- cgit v1.2.3-24-ge0c7