all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Tim Cross <theophilusx@gmail.com>
To: "Andreas Röhler" <andreas.roehler@online.de>
Cc: Daniel Colascione <dan.colascione@gmail.com>,
	Drew Adams <drew.adams@oracle.com>,
	emacs-devel@gnu.org
Subject: Re: more than one prefix argument
Date: Wed, 27 Jul 2011 19:48:19 +1000	[thread overview]
Message-ID: <CAC=50j_yDhsX1ci_tM7+hTYBmFLr2py=nXw2Bx27aR-XTNNemQ@mail.gmail.com> (raw)
In-Reply-To: <4E2FDC71.5070305@online.de>

On Wed, Jul 27, 2011 at 7:37 PM, Andreas Röhler
<andreas.roehler@online.de> wrote:
> Am 27.07.2011 11:25, schrieb Tim Cross:
> [ ... ]
>>
>> While P and p are similar, I'm not sure they are as similar as you
>> imply. Consider a very simple example. You have a function and you
>> want it to use a prefix arg and you want the raw form because you want
>> to distinguish between no prefix arg and C-u 1 or M-1. You then define
>> a second function, but this time, you want it to default to 1 if no
>> prefix arg or whatever the value is if one is provided, then the 'p'
>> numeric version is what you want. In each case, the P and p support
>> what you need
>
> yes, but one of them would be sufficient.
>
> OTOH we have not a handy code for branching.
>
> Do you know case, "p" receiving M- numeric arg must fail, so C-u NUMBER
> through "P" is needed?
>
>
>  without you having to do additional code. Yes, you could
>>
>> solve this with just the P version, but then you would have to do more
>> code to handle the common case of just wanting to process the prefix
>> arg as a number.
>>
>> This additional code
>
> Don't suggest additional code but a better use of "P" - no parallel
> implementations. Having "P" as a branch-flag not affected by "p"
>

Sorry, just not quite following your argument.

If we were to get rid of one, it would have to be the numeric version
(i.e. p) rather than P as sometimes you need to be able to distinguish
between nil and 1. Essentially, we would need the raw form. This means
that whenever you need to process the prefix argument as a number you
will need to test and convert it to distinguish nil and extract the
value from the list - this would be additional code ini your function.

I don't understand what you mean by having a handy code for branching.
Can you give an example of how this code would work and how a command
using this code would be called?

tim



  reply	other threads:[~2011-07-27  9:48 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-07-26 19:59 more than one prefix argument Andreas Röhler
2011-07-26 20:10 ` Daniel Colascione
2011-07-26 20:36   ` Andreas Röhler
2011-07-26 20:57     ` Drew Adams
2011-07-26 20:36   ` Drew Adams
2011-07-27  6:25     ` Andreas Röhler
2011-07-27  9:25       ` Tim Cross
2011-07-27  9:37         ` Andreas Röhler
2011-07-27  9:48           ` Tim Cross [this message]
2011-07-27 10:21             ` Andreas Röhler
2011-07-27 11:21               ` Andreas Schwab
2011-07-27 11:46                 ` Andreas Röhler
2011-07-27 12:39                   ` Andreas Schwab
2011-07-27 12:51                   ` Tim Cross
2011-07-27 12:46               ` Tim Cross
2011-07-27 15:09               ` Drew Adams
2011-07-27  9:38         ` Tim Cross

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='CAC=50j_yDhsX1ci_tM7+hTYBmFLr2py=nXw2Bx27aR-XTNNemQ@mail.gmail.com' \
    --to=theophilusx@gmail.com \
    --cc=andreas.roehler@online.de \
    --cc=dan.colascione@gmail.com \
    --cc=drew.adams@oracle.com \
    --cc=emacs-devel@gnu.org \
    /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.