about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2022-01-07 05:35:44 +0000
committerEric Wong <e@80x24.org>2022-01-11 18:22:11 +0000
commit46983ee07a5845fdb2c55ab4f2dd88f6b923fb85 (patch)
tree906ac56a2aadd3a9bfd329fd2fedeb6bb16906f6
parentd0ed535663aa6b05d06b4f386c1e65422b7bbaa1 (diff)
downloaddtas-46983ee07a5845fdb2c55ab4f2dd88f6b923fb85.tar.gz
This can be useful in the face of non-descriptive filenames.
-rwxr-xr-xbin/dtas-console25
1 files changed, 25 insertions, 0 deletions
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