DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 615BEY8I1174803 Authentication-Results: delorie.com; dmarc=pass (p=none dis=none) header.from=cygwin.com Authentication-Results: delorie.com; spf=pass smtp.mailfrom=cygwin.com DKIM-Filter: OpenDKIM Filter v2.11.0 delorie.com 615BEY8I1174803 Authentication-Results: delorie.com; dkim=pass (1024-bit key, unprotected) header.d=cygwin.com header.i=@cygwin.com header.a=rsa-sha256 header.s=default header.b=Q8MfdMWw X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org A65394BA2E10 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1770290073; bh=wsz12+4TFke8qe6DfSq1OzzjO+sWcfgWf1NieHIZ/Pc=; h=References:In-Reply-To:Date:Subject:To:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=Q8MfdMWwstDGtLxn+figaTSG6Y/0Gd3MODzZtUVVFtDKdSUDJO6CdyjTMkqd12WNJ +uAibBopxEWc2nU24g6yUrDHm4lhF0Rj4wO/oOwLf2Ovv1fh6Fc9XAP1mZoietijRL 0ThqlFhJZ2e5abLsF2UhmYvgCRkqmeTPAT09Zba4= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 6FF5E4BA2E16 ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 6FF5E4BA2E16 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1770289894; cv=pass; b=FpP8ezjuw1D7u9+74ancZ0dyp0B8W/vpMwfJGFGSp+fGwphIxhKPqXD2V7f+V0e7TaKaIcXHC3H0a6wyyDFs+lgKYhdnE+Lx+O3lRACHsH3E2fkUwMoD/BGgt/qvQPz6FHxruoKg2lC245kOENGqQQurHorJd38EQFhzid4SBPQ= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1770289894; c=relaxed/simple; bh=AtEJnz0yGyAjl7etQICrZt4VlH62anQ4DbfLkDOb2gY=; h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To; b=Luip92dQlZLybfhLAvr1cMbV3qqoEpCYx4YoUa43ris8vJ8mtq85o29J2NAItL/zsQv69kN1nQrSUcHSpQZJ4KVqDuWi1OEtTIJkVgU4jqQ33E8RDVlX3Ogi3e1gj+Sf+Jo1tlkalDZgju+5YOMNsbVBCDl8FXaCOXsgeQiEeNI= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 6FF5E4BA2E16 ARC-Seal: i=1; a=rsa-sha256; t=1770289894; cv=none; d=google.com; s=arc-20240605; b=c/hJyIPoIOBnuL5Ei0WWPbLP3+nIjObzGFG+WzNp+aJrjGTAobQYgZxL50GFU9nRSq FLERTGE/JSDw+1QLlxzNmSDNXWzxS3Q/710yMkP23Gldyv1eQekC8g0wuVUZn8W+lfEe V9Nr8x7hu8x7C2A1eTCsVlTHSaAZ0m36NKUSac6F5XqBbZFXDHmcxarkslVpITe4IlKF BQhSQ50z47RHetTCGeI1EB5+01QpCNCk1up+R3ONA5l0zkHGEPz/aE0roi8+2+L5/jis EU21sxkaBU4oxs6ppWY7/ac86ts9jvYIrN6UVRqCR70t+vgrunuUor5uVsGhf1KKryZy FC0w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=oVTzuIVtQ88YzWMhmSHbrtf4VYXWSQhj0V0oqjBnIyk=; fh=tgx+8g58kjKNxHg4mqs7tq/7Vt0Lip7Y3QHmrP/WhjA=; b=jVc2VyXZ0cFtipyFqVPoRPNF4MjMwxZOMQ2cJh+rRyT2NyiYI63ieWi0Rw/R3VBtjq CDGLiXZSLtQ6S6eqB8Yq3x44TX2ON2pviLM4f9EFlK92hvgM2LAXFILWcXF8miVLzvuf ttmRT9XmRTAtKIbuksqmfS7O4ODXhkcfPj9PRudepMOnz0yS2iSXUm/8ue18jxV3o6Ah Veu79ecPFrROIsNUCJGCcSFeq2A+ocoudAVObytq2llW2HKwEF/iQHfcg7QZU8AB/ul5 am9BUBpblHPut9lRDvB3JW28qBUruCEBDLsuTHeNpUCi9xJC7yxcVfsB4sZi6fqkHoVl BVdg==; darn=cygwin.com ARC-Authentication-Results: i=1; mx.google.com; arc=none X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770289894; x=1770894694; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=oVTzuIVtQ88YzWMhmSHbrtf4VYXWSQhj0V0oqjBnIyk=; b=Zm6jAI3CFEJtWi69rg5xibn6xsod6CGmqI9kW2+HdIkzN63ZlIhBed/5I13+bniIF5 ssHpsjvXahLGaevk+yJpNcszVv5/II7RfbnHcSV/yIRRsblTdWABKpq+2XLI/oo00fKJ 7DW9ufSTKTFnZEjHfZKf2BaL4TfXbzdVYxc9KId8u78rU14bDn5rH3C4+2U89IheHzf1 vKZ+opal7WkS4wJVGRsuFzNicMImlRfhLc7CZpkI8KZgjzIUNowONnXSmsZi6QxxA8JV EiSBFz7iTe7H8jbvdOPP/wyVeJQGJzTij1HWzZPLi9KUrNCR+2XMdPnB3KHBGU0P/5wr AtRg== X-Gm-Message-State: AOJu0YwRVskHOfkmba9a2NKDREoxLYDUhG64luCXv/UELhzhmhsz+5tT zGDel5SjbViBgwHobsdSiusWHR3JosodWY3mgslng3TrAsg/6K6QT1d1QBgfcU3IhiBp0AHnfSr c0mIyBx8+2h01+bDcIqvss3NFTlKlSYjCFQ== X-Gm-Gg: AZuq6aJUQthZEsnZo8LCckhfYIRpCUb3kC5lcliPyTreKQ2mOcAwW5mrge43bdZ7Dkl CNyo+SSGuJAQnXAzVwjZgeqPub0cAiQnYYe0G8fvNoiPvLUlgIXOBf5H70YSbWfRuWiZalBPE/A 0jv4HME/skRgRdMqelmaookl0FCI3urko2VTaUISt7oFzkULK+vvmKAhjnaaQ9lNUj5OBdVPmWV 9xXlAmS8NWAfdkabUflNg2ojJm7bOlAgvaJLRL7adhQUSjt7SPaqYtJ6SBRo+9UKDgFLb6vS33A CQiDUabkLF/Ap3zLFcHh8+A35BJTNdzqY/VKWk/C7L/ytGYD4iLbA2PY0iwwoTfxmhazUGO0kNl uaxyODld3pdDSnw== X-Received: by 2002:a53:ab08:0:b0:644:28d2:a4a6 with SMTP id 956f58d0204a3-649db48d9eemr3891324d50.47.1770289893661; Thu, 05 Feb 2026 03:11:33 -0800 (PST) MIME-Version: 1.0 References: <2eb7528d-babd-4bc8-9c0d-b2f77499a627 AT towo DOT net> <943e0dd6-cde5-4195-94f6-e5c15c5895f5 AT SystematicSW DOT ab DOT ca> In-Reply-To: Date: Thu, 5 Feb 2026 03:11:19 -0800 X-Gm-Features: AZwV_Qi26jHV4ek5wyztre8Bm2IR4GQa7KxJau2pmVeVSd9zLZBMnW54TGtTEr4 Message-ID: Subject: Re: [FLAC 1.5.0-1] Man pages use HYPHEN character instead of HYPHEN-MINUS. To: Brian Inglis via Cygwin X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.30 List-Id: General Cygwin discussions and problem reports List-Archive: List-Post: List-Help: List-Subscribe: , From: Backwoods BC via Cygwin Reply-To: Backwoods BC Content-Type: text/plain; charset="utf-8" Sender: "Cygwin" Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by delorie.com id 615BEY8I1174803 On Wed, Feb 4, 2026 at 3:23 PM Dr Bean via Cygwin wrote: > > On Wed, 04 Feb 2026, Brian Inglis via Cygwin wrote: > > > On 2026-02-04 12:03, Thomas Wolff via Cygwin wrote: > > > Am 04.02.2026 um 18:10 schrieb Brian Inglis via Cygwin: > > > > On 2026-02-04 02:56, Vincent via Cygwin wrote: > > > > > My request is related to an issue I opened in the FLAC Github : > > > > > https://github.com/xiph/flac/issues/861 > > > > > > After some investigations, the issue is related to the build release of the > > > > > FLAC package provided by Cygwin : the man pages of flac(1) and metaflac(1) > > > > > use the HYPHEN (U+2010 ) character instead of the HYPHEN-MINUS (U+002D) > > > > > character. > > > > > > These two commands expect HYPHEN-MINUS character, so if you copy-paste the > > > > > man page options in your terminal, it will fail. > > > > > > Example : flac ‐‐version > > > > > will return an error : « can't open input file ‐‐version: No such file or > > > > > directory », because of « ‐‐version » with HYPHEN copied-pasted from the > > > > > man pages. > > > > > > The right string is « --version » with HYPHEN-MINUS (U+002D). > > > > > > Example : flac --version > > > > > will return : « flac 1.5.0 » > > > > > > Please, feel free to read the issue in Github ( > > > > > https://github.com/xiph/flac/issues/861 ) for more details, as it's easier > > > > > to read code and quotes with the markdown formatting. > > > > > > This is a very pretty nasty kind of bug, because it's very difficult to > > > > > distinguish HYPHEN-MINUS and HYPHEN in a terminal. It's also very difficult > > > > > to figure out why the command has failed, as the « No such file or > > > > > directory » is not the root cause of the problem. > > > > > > I think a new build release to fix this, would be very welcome. > > > > > > Thank you very much for your time and your great work. :) > > > It’s really a nuisance that man (presumably gnu man, but I don’t > > > remember the details of a previous discussion) changed interpretation of > > > some important characters into „glyphs“ that some witty people thought > > > to be nice but are completely non-functional. > > > It applies not only to „-“ but also to „~“. Look at `man bash` and > > > search for bashrc and you'll see the tilde symbol replaced by an ugly > > > superscript „small tilde“. Why?? > > > Package maintainers are forced to adapt their man pages and either > > > replace all occurrences of these characters by corresponding escapes or > > > apply these two global tricks per man page: > > > > .char ^ \(ha > > > .char - \N'45' > > > It appears to be a consequence more of groff -man being upgraded to produce > > better quality typographic output more consistently with other macro > > packages, output devices, and more comprehensive font, character, and glyph > > sets, while not penalizing the other existing macro packages originally > > designed and intended to produce quality output: see groff(7), > > groff_rfc1345(7), and groff_char(7), for example: > > "The developers of AT&T /troff/ chose mappings for them that would be useful > > for typesetting technical literature in a broad range of scientific > > disciplines > > ... > > Keycap Appearance and meaning Special character and meaning > > " " neutral double quote \[dq] neutral double quote > > ' ’ closing single quote \[aq] neutral apostrophe > > - ‐ hyphen \- or \[-] minus sign/Unix dash > > \ (escape character) \e or \[rs] reverse solidus > > ^ ˆ modifier circumflex \(ha circumflex/caret/“hat” > > ` ‘ opening single quote \(ga grave accent > > ~ ˜ modifier tilde \(ti tilde" > > > Really this tension between compatibility with tty input and basic/draft and > > typographic quality output has existed since the earliest days of > > computerized text formatting and typesetting with various levels of higher > > quality output devices from dot matrix, daisy wheel, phototypesetter, > > electrostatic, laser, and higher quality rendering devices. > > > [Note: \N'#' refers to the current output font glyph index *NOT* an input code.] > > > > > Upstream sources seems to provide only .md man sources and no b-r > > > > package for conversion (pandoc unavailable from Cygwin) so man pages > > > > are generated for the upstream sources, and this conversion > > > > generates man page options with plain text hyphen-minus, which are > > > > treated by man as normal text *hyphen* `‐­­` not plain text *minus* > > > > `-`. > > > > In man pages you use escaped hyphen-minus `\fB\-v\fR` to treat them > > > > as minus text `-` as used in options `-v`. > > > > We see this use of unescaped hyphens in the upstream tar files, > > > > below, so please complain upstream about their man page generation, > > > > and reopen their issue: > > > > ``` > > > > $ wget https://mirror.../x86_64/release/flac/flac-1.5.0-1-src.tar.xz > > > > $ tar -xvf flac-1.5.0-1-src.tar.xz > > > > flac-1.5.0-1.src/ > > > > flac-1.5.0-1.src/flac-1.5.0.tar.xz # upstream sources > > > > flac-1.5.0-1.src/FLAC.cygport > > > > $ tar -xvf flac-1.5.0-1.src/flac-1.5.0.tar.xz flac-1.5.0/man/{,meta}flac.1 > > > > flac-1.5.0/man/flac.1 > > > > flac-1.5.0/man/metaflac.1 > > > > $ grep -m5 '\\f[[{]\?B[]}]\\\?-' flac-1.5.0/man/{,meta}flac.1 > > > > flac-1.5.0/man/flac.1:\f[B]-\f[R] \f[I]\&...\f[R] ] > > > > flac-1.5.0/man/flac.1:\f[B]flac\f[R] [ \f[B]-d\f[R] | > > > > \f[B]--decode\f[R] | \f[B]-t\f[R] | > > > > flac-1.5.0/man/flac.1:\f[B]--test\f[R] | \f[B]-a\f[R] | \f[B]--analyze\f[R] ] [ > > > > flac-1.5.0/man/flac.1:\f[I]infile.ogg\f[R] | \f[B]-\f[R] \f[I]\&...\f[R] ] > > > > flac-1.5.0/man/flac.1:\f[B]-d\f[R], analysis with \f[B]-a\f[R] or > > > > testing with \f[B]-t\f[R]. > > > > flac-1.5.0/man/metaflac.1:\f[B]-o\f[R] \f[I]filename\f[R]\f[B], > > > > --output- name=\f[R]\f[I]filename\f[R] > > > > flac-1.5.0/man/metaflac.1:\f[B]--preserve-modtime\f[R] > > > > flac-1.5.0/man/metaflac.1:\f[B]--with-filename\f[R] > > > > flac-1.5.0/man/metaflac.1:\f[B]--no-filename\f[R] > > > > flac-1.5.0/man/metaflac.1:\f[B]--no-utf8-convert\f[R] > > > > ``` > > -- > > My experience with the man page of `which`, which > mirrors that of Vincent with FLAC > > http://drbean.sdf.org/LooksLikeHyphen.html My experience is that this is a problem pretty much everywhere on the 'Net. Long ago I wrote a simple filter script to remove all non-printing characters and CR and LF from the clipboard contents and put the result back into the clipboard. I then display the contents for a few seconds before closing the window. This won't properly deal with Unicode in the copied data, but at least you can see that the data is bogus. As a Cygwin newbie long ago, I was constantly getting errors because of spurious CR characters in copied text. Sometimes it was completely non-obvious that this was the problem and it wasn't until I started using my filter script regularly that I stopped getting mysterious errors. If someone wanted to write a clipboard "purifier" that would de-Unicode and de-HTML the data, I'd be forever grateful. I wouldn't have a clue how to go about this myself. -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple