Hi onf, On Mon, Nov 25, 2024 at 05:08:48PM +0100, onf wrote: > Hi Alejandro, > > On Mon Nov 25, 2024 at 1:44 PM CET, Alejandro Colomar wrote: > > You may find it useful for development of manual pages. If so, please > > let me know any feedback you have for it. I was wondering if I should > > pipe to less -R, just like man(1) does. For now, having doubts, I kept > > it simple, which would allow wrapping this in fancier scripts that for > > exaple diff an entire repository of manual pages (although that maybe > > calls for running groff(1) and diff(1) directly). > > less simply pipes the data through if it's not at the end of a pipeline, > so piping the diff's output to less -R shouldn't complicate use in > scripts in any way (except perhaps for escape sequences if you use > color).
I've seen less(1) cause issues when called in a while loop.
And indeed, there's good reasons for calling this in a loop.
Here's a useful wrapper I came up with after writing this email:
$ tail -n19 scripts/bash_aliases
# diff all modified pages against the system ones.
duffman()
{
cd $(git rev-parse --show-toplevel);
git diff --name-only \
| grep -E \
'(\.[[:digit:]]([[:alpha:]][[:alnum:]]*)?\>|\.man)+(\.man|\.in)*$' \
| sortman \
| while read f; do \
local sys="$(basename "$f")";
diffman "$sys" "$f";
done \
| less -R;
cd -;
}
>
> $ less -R /usr/include/stdio.h | grep -E '^#' | wc -l
> 241
> $ sed -E "s/^/$(printf '\033[1m')/; s/\$/$(printf '\033[m')/" \
> /usr/include/stdio.h | less -R | wc -l
> 985
>
> ~ onf
Have a lovely day!
Alex
--
<https://www.alejandro-colomar.es/>
signature.asc
Description: PGP signature
