From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS22989 209.51.188.0/24 X-Spam-Status: No, score=-3.9 required=3.0 tests=AWL,BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS,SPF_PASS shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dcvr.yhbt.net (Postfix) with ESMTPS id F26D81F953 for ; Fri, 7 Jan 2022 05:36:18 +0000 (UTC) Received: from localhost ([::1]:50342 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1n5hvF-0000ly-Kt for e@80x24.org; Fri, 07 Jan 2022 00:36:17 -0500 Received: from eggs.gnu.org ([209.51.188.92]:39768) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n5hvA-0000ln-FC for dtas-all@nongnu.org; Fri, 07 Jan 2022 00:36:12 -0500 Received: from dcvr.yhbt.net ([64.71.152.64]:50380) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n5hv8-0004Nf-UN for dtas-all@nongnu.org; Fri, 07 Jan 2022 00:36:12 -0500 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id 7D7CD1FA10 for ; Fri, 7 Jan 2022 05:35:44 +0000 (UTC) From: Eric Wong To: dtas-all@nongnu.org Subject: [PATCH 4/4] dtas-console: add 'i' toggle to show comments (metadata) Date: Fri, 7 Jan 2022 05:35:44 +0000 Message-Id: <20220107053544.31240-5-e@80x24.org> In-Reply-To: <20220107053544.31240-1-e@80x24.org> References: <20220107053544.31240-1-e@80x24.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=64.71.152.64; envelope-from=e@80x24.org; helo=dcvr.yhbt.net X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: dtas-all@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: duct tape audio suite List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dtas-all-bounces+e=80x24.org@nongnu.org Sender: "dtas-all" 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 @@ else rg_mode_i = 0 end +show_info = false def update_tfmt(prec, tsec) if tsec @@ -208,6 +209,27 @@ def may_fail(c, req, events) 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 @@ def may_fail(c, req, events) 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