From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: tuhs-bounces@minnie.tuhs.org X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham autolearn_force=no version=3.4.1 Received: from minnie.tuhs.org (minnie.tuhs.org [45.79.103.53]) by inbox.vuxu.org (OpenSMTPD) with ESMTP id fd4d62c0 for ; Wed, 11 Jul 2018 01:32:43 +0000 (UTC) Received: by minnie.tuhs.org (Postfix, from userid 112) id ED0CC9E2BE; Wed, 11 Jul 2018 11:32:41 +1000 (AEST) Received: from minnie.tuhs.org (localhost [127.0.0.1]) by minnie.tuhs.org (Postfix) with ESMTP id 48B659E274; Wed, 11 Jul 2018 11:31:32 +1000 (AEST) Received: by minnie.tuhs.org (Postfix, from userid 112) id AE36C9E273; Wed, 11 Jul 2018 11:31:28 +1000 (AEST) Received: from mcvoy.com (mcvoy.com [192.169.23.250]) by minnie.tuhs.org (Postfix) with ESMTPS id 6FE419E26F for ; Wed, 11 Jul 2018 11:31:28 +1000 (AEST) Received: by mcvoy.com (Postfix, from userid 3546) id 6AB0C35E116; Tue, 10 Jul 2018 18:31:27 -0700 (PDT) Date: Tue, 10 Jul 2018 18:31:27 -0700 From: Larry McVoy To: Noel Hunt Message-ID: <20180711013127.GC2012@mcvoy.com> References: <3386fb80b5282f7bca0ccf34252182c2398232c1@webmail.yaccman.com> <5D272962-0063-4D28-B551-F381D3D10239@alchemistowl.org> <009101d4112f$8bb30f50$a3192df0$@ronnatalie.com> <1531153839.3991054.1434840984.210C4B3F@webmail.messagingengine.com> <201807100554.w6A5s0VM005631@freefriends.org> <201807100719.w6A7Jx9V014856@freefriends.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.24 (2015-08-30) Subject: Re: [TUHS] Any Good dmr Anecdotes? X-BeenThere: tuhs@minnie.tuhs.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: The Unix Heritage Society mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: TUHS main list Errors-To: tuhs-bounces@minnie.tuhs.org Sender: "TUHS" On Wed, Jul 11, 2018 at 10:20:50AM +1000, Noel Hunt wrote: > I'm surprised why anyone would bother with these routines > anymore, given the startling simplicity of Plan9's arg(3). > One stands in awe of such simplicity. I believe it was > William Cheswick who designed it, but I may be wrong. It's nice but I like long opts. The getopt in BK (and now in L) looks like this and produces its own help (which does miss the short opts, my bad, I could fix that). Look at the default in the switch: int main(int ac, string av[]) { string c; string lopts[] = { "bigy:", "date-split", "exif", "exif-hover", "force", "index:", "names", "nav", "parallel:", "quiet", "regen", "reverse", "sharpen", "slide:", "thumbnails", "title:", "ysize:", }; while (c = getopt(av, "fj:", lopts)) { switch (c) { case "bigy": bigy = (int)optarg; break; case "date-split": dates = 1; break; case "exif": exif = 1; break; case "exif-hover": exif_hover = 1; break; case "f": case "force": case "regen": force = 1; break; case "index": indexf = optarg; break; case "j": case "parallel": parallel = (int)optarg; break; case "quiet": quiet = 1; break; case "names": names = 1; break; case "nav": nav = 1; break; case "reverse": reverse = 1; break; case "sharpen": sharpen = 1; break; case "slide": slidef = optarg; break; case "title": title = optarg; break; case "thumbnails": thumbnails = 1; break; case "ysize": ysize = (int)optarg; break; default: printf("Usage: photos.l"); foreach(c in lopts) { if (c =~ /(.*):/) { printf(" --%s=", $1); } else { printf(" --%s", c); } } printf("\n"); return(0); } }