with diversions (and here, practically no other mechanism can be used), it's not 
reasonably possible to cover this edge case where the user *maybe* has also installed 
manpage translations, so that these are also moved away (but not "replaced", 
since the zutils has no translated manpages).

On my system, manpages-de 4.27.0-1 is installed.

The mechanism via diversions is the implementation level. You don't want a 
typical user to care about which mechanism is used or how it performs the task; 
users want to use tools and get higher-level work done. As of now, this 
mechanism seems to be simply broken or, if you prefer politically correct 
language, inadequate for the purpose. From a user's viewpoint, if he/she can 
call two tools, say, `A` and `B`, then the user expects `man A` to deliver the 
documentation for A and `man B` to deliver the documentation for B. The 
situation in which `man A` delivers documentation for B or `man B` delivers 
documentation for A, regardless of the languages, is a bug, or, if you prefer 
politically correct parlance, ‘a very surprising feature’. If B were a full 
replacement for A at least in terms of the interface in the strict sense of the 
word, you could have at least a half of an argument, but it's not the case here 
(see below). In free software, you as a developer are free do whatever you 
wish, but from a user's viewpoint, the interface between commands and their 
manpages should be fixed. Don't ask me how; it sounds like it's going to be a 
difficult, nontrivial task.

given above situation and the fact, that I consider having no translated 
manpage at all to be worse than the (in this case compatible tool)

Thought I would agree that the tools are similar, they are incompatible in any 
direction in the strict sense of the word. If you rely on the current German 
manpage delivered by `man zgrep` (but running `zgrep` takes a version from 
zutils) and implement, say, catching errors (including tests for catching 
errors) based on that documentation (including testing that the switch ‘-r’ 
doesn't work), parts of your error-catching code remain untested. You will get 
a mess even if you use/test only positive features: the environment variable 
GREP is honoured by gzip's zgrep but not by zutils' zgrep.

Off-topic, just in case you think that searching directories recursively is 
always a surplus: sometimes you wish to avoid that, e.g., if the caller is a 
script expecting no subdirectories, to be rightfully surprised if any is 
encountered.

Reply via email to