all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Wolfgang Jenkner <wjenkner@inode.at>
To: Drew Adams <drew.adams@oracle.com>
Cc: 16722@debbugs.gnu.org
Subject: bug#16722: 24.3.50; `M-x man' does not handle case appropriately
Date: Sun, 16 Feb 2014 01:28:37 +0100	[thread overview]
Message-ID: <85d2inkiiy.fsf@iznogoud.viz> (raw)
In-Reply-To: <512c4f71-4f67-4f36-8e1d-d756ad446d2e@default> (Drew Adams's message of "Sat, 15 Feb 2014 11:55:15 -0800 (PST)")

On Sat, Feb 15 2014, Drew Adams wrote:

>> > M-x man RET
>> > Hitting TAB (with no minibuffer input) completes the empty input
>> > to the two chars `^:'.
>> 
>> This is a consequence of (1) and (2) below; the OP could confirm
>> (1),
>
> If I do `man -k ls' or `man -k "ls"' or `man -k ^l' or `man -k "^l"
> then I get only the message "ls: nothing appropriate" (or the same
> with ^l instead of ls).
>
> However, if (in bash, outside Emacs) I type `man ls' or `man "ls"'
> then I get the normal `man' page output/behavior for `ls'.

Your man pages live in subdirectories of a small number of "root"
directories.  Let's assume that you have only one of those root
directories, say /usr/share/man.  If you type `man ls' the output comes
from a file /usr/share/man/man1/ls.1 (or perhaps from a pre-formatted
file /usr/share/man/cat1/ls.1 or perhaps from one of those with a .gz
suffix or something like that).

However, the output for `man -k ls' comes from a different file (the
same one for all man pages under this root directory), namely
/usr/share/man/whatis (other man packages may use a file with
a different name).

Since `man -k ls' doesn't give a summary for the `ls' man page I think
that

>> (1) `man -k' can't find any whatis database or all those files are
>> empty.

At least it doesn't have an entry for ls.  You should be able to create
this file by running the `makewhatis' command.

>> (2) This particular `man -k' sends "^: nothing appropriate" to
>> stdout and not to stderr (if the distinction is meaningful on
>> cygwin), which is supposed to mean that it's a line "from the
>> summary database", see
>> http://pubs.opengroup.org/onlinepubs/009696799/utilities/man.html
>> 
>> > Thereafter I can do nothing with that.  Whether I type
>> > anything after the `^:' or not, TAB just completes to `^:'.
>> 
>> I think that has been fixed as a by-product of a 2013-01-10 change:
>> 
>> 	(man): Flush the completion cache between uses.
>
> Not sure what you mean, but the behavior is not fixed for me.
> I still get exactly the same behavior I reported, even with Emacs
> builds from only a few days ago.

IIUC, you had the following in mind:

M-x man RET TAB C-g M-x man RET l TAB

used to give `^:' (because the cache of man page name completions was
not flushed between invocations of man).

If you set Man-man-k-use-anchor to t it should give [No match] now.

>> I.e., the behaviour is now described by
>> 
>> > If I instead first type `l' (as in `ls') and then hit TAB, I get
>> > [No match].  It doesn't seem to matter what I type in the minibuffer:
>> > TAB always says [No match].
>> 
>> which seems to be irreproachable in the light of (1) above.
>
> Dunno what that means, but that is still the behavior I see: there
> is no completion for `M-x man'.

As explained above the source for the completions is the `whatis' file
at a man root directory.  As for `irreproachable', I found it funny to
describe the behaviour in "moral" terms, sorry if this was confusing.

Wolfgang





  reply	other threads:[~2014-02-16  0:28 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-11 14:45 bug#16722: 24.3.50; `M-x man' does not handle case appropriately Drew Adams
2014-02-15 17:17 ` Wolfgang Jenkner
2014-02-15 19:55   ` Drew Adams
2014-02-16  0:28     ` Wolfgang Jenkner [this message]
2014-02-16  3:04       ` Drew Adams
2014-02-15 20:54   ` Eli Zaretskii
2014-02-16  1:08     ` Wolfgang Jenkner
2014-02-16  3:50       ` Eli Zaretskii
2014-02-16 14:17         ` Wolfgang Jenkner
2017-02-01 19:25           ` Drew Adams
2017-02-01 19:50             ` Eli Zaretskii
2017-02-02  1:08             ` npostavs
2020-09-25 10:21         ` Lars Ingebrigtsen
2020-09-25 11:29           ` Eli Zaretskii
2020-09-25 11:36             ` Lars Ingebrigtsen
     [not found] <<bc83b9db-228c-4eb1-893a-9672bb376a4f@default>
     [not found] ` <<85fvnkwarc.fsf@iznogoud.viz>
     [not found]   ` <<834n40ayg4.fsf@gnu.org>
     [not found]     ` <<858utbkgof.fsf@iznogoud.viz>
     [not found]       ` <<831tz3btr8.fsf@gnu.org>
     [not found]         ` <<85ob27ywed.fsf@iznogoud.viz>
     [not found]           ` <<c7667a78-58ba-4e9a-8eb9-c86727395b79@default>
     [not found]             ` <<831svhwv0z.fsf@gnu.org>
2017-02-01 22:36               ` Drew Adams

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=85d2inkiiy.fsf@iznogoud.viz \
    --to=wjenkner@inode.at \
    --cc=16722@debbugs.gnu.org \
    --cc=drew.adams@oracle.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.