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 5083E1F953 for ; Fri, 7 Jan 2022 05:36:03 +0000 (UTC) Received: from localhost ([::1]:50280 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1n5hv0-0000hs-Ed for e@80x24.org; Fri, 07 Jan 2022 00:36:02 -0500 Received: from eggs.gnu.org ([209.51.188.92]:39720) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n5huv-0000hO-1A for dtas-all@nongnu.org; Fri, 07 Jan 2022 00:35:57 -0500 Received: from dcvr.yhbt.net ([64.71.152.64]:50138) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n5hus-0004HA-O6 for dtas-all@nongnu.org; Fri, 07 Jan 2022 00:35:55 -0500 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id 29BCA1F9FC for ; Fri, 7 Jan 2022 05:35:44 +0000 (UTC) From: Eric Wong To: dtas-all@nongnu.org Subject: [PATCH 1/4] archive: support comments, default to none Date: Fri, 7 Jan 2022 05:35:41 +0000 Message-Id: <20220107053544.31240-2-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" The default "Processed by SoX" comment is pointless, and I often want to archive + tag something in one step to reduce FS I/O. --- bin/dtas-archive | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/bin/dtas-archive b/bin/dtas-archive index dd3b537..c88873e 100755 --- a/bin/dtas-archive +++ b/bin/dtas-archive @@ -29,6 +29,7 @@ stats = false keep_going = false compression = [] +comment = [] OptionParser.new('', 24, ' ') do |op| op.banner = usage @@ -36,6 +37,7 @@ op.on('-C', '--compression [FACTOR]', 'compression factor for sox') { |c| compression = [ '-C', c ] } + op.on('--comment=TEXT', String) { |c| comment.push('--comment', c) } op.on('-j', '--jobs [JOBS]', Integer) { |j| jobs = j } op.on('-S', '--stats', 'save stats on the file') { stats = true } op.on('-k', '--keep-going', 'continue after error') { keep_going = true } @@ -53,6 +55,8 @@ op.parse!(ARGV) end +comment.push('--comment', '') if comment.empty? + dst = ARGV.pop src = ARGV.dup @@ -137,7 +141,7 @@ if dry_run || !silent names = job.map { |x| Shellwords.escape(x) } - cmd = [ 'sox', *names ] + cmd = [ 'sox', names[0], *compression, *comment, names[1] ] if stats cmd << 'stats' cmd << "2>#{Shellwords.escape(stats_out)}" @@ -151,7 +155,7 @@ end end - cmd = [ 'sox', input, *compression, output ] + cmd = [ 'sox', input, *compression, *comment, output ] if stats cmd << 'stats' cmd = [ *cmd, { err: stats_out } ]