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. :)

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]
```

[pasted upstream also but can not reopen issue!]

--
Take care. Thanks, Brian Inglis              Calgary, Alberta, Canada

La perfection est atteinte                   Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter  not when there is no more to add
mais lorsqu'il n'y a plus rien à retrancher  but when there is no more to cut
                                -- Antoine de Saint-Exupéry

--
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

Reply via email to