[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: guix.el: Key bindings for a "package list"
From: |
Alex Kost |
Subject: |
Re: guix.el: Key bindings for a "package list" |
Date: |
Sat, 06 Sep 2014 20:45:41 +0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) |
Ludovic Courtès (2014-09-06 00:22 +0400) wrote:
> Alex Kost <address@hidden> skribis:
>
>> Ludovic Courtès (2014-09-05 12:26 +0400) wrote:
>>
>>> Alex Kost <address@hidden> skribis:
>>>
>>>> Hello,
>>>>
>>>> I would like to know people's opinions about default key bindings.
>>>>
>>>> Currently in a buffer with a list of packages we have: "u"/"U" to
>>>> unmark/unmark all. But it leaves no room for marking for upgrade and I
>>>> just bound it to "^" which is not very good.
>>>>
>>>> So what about combining "unmark"/"unmark all" into one key and use
>>>> either:
>>>>
>>>> 1. "U" - unmark ("C-u U" - unmark all);
>>>> "u" - mark for upgrading.
>>>>
>>>> 2. "u" - unmark ("C-u u" - unmark all);
>>>> "U" - mark for upgrade. Should it also require (for consistency) to
>>>> use upper-case "I"/"D" for marking for installing/deletion?
>>>
>>> I’m hesitant, but I would vote for #2. I don’t think I and D are needed
>>> though.
>>
>> I prefer this variant as well: "u" is a too common binding for unmarking
>> in Emacs (it is used in dired, buffer-menu, ibuffer, package-menu, ...).
>> So unmarking should probably stay on "u" (and unmark all with prefix).
>
> Yes.
>
>>>> Also should there be a command to mark all obsolete packages for
>>>> upgrading? If so, what key should it be bound to? (perhaps my favourite
>>>> "^").
>>>
>>> Actually this is what U does in package.el. But I’m fine with ^ here.
>>
>> Taylan suggested "C-u U" for this one. And I think it would be perfect,
>> but...
>>
>> Let's say a user has both "foo-1.0:out" and "foo-1.0:doc" installed and
>> one day they become obsolete. He decides to upgrade only "out" for some
>> reason. May there exist such a situation?
>
> Ooh. Well, why not?
>
>> If so, then I think "C-u U" should be used to specify a particular
>> output for upgrading. Actually I implemented such specifying of outputs
>> for installing and deletion ("i"/"d") but not for upgrading (I don't
>> remember why).
>
> OK. Then I’m fine with ^.
OK, so the summary is:
- "u" to unmark ("C-u u" to unmark all);
- "i" to mark for installing "out" of the current package ("C-u i" to
prompt for outputs to install);
- "d" to mark for deleting all outputs of the current package ("C-u d" to
prompt for outputs to delete);
- "U" to mark for upgrade all outputs of the current package ("C-u U" to
prompt for outputs to upgrade);
- "^" to mark all obsolete packages for upgrade.
And here is a patch with all changes. Perhaps it would be better to
split it into several commits or is it OK to push it like this?
0001-emacs-Improve-key-bindings-for-marking-the-packages.patch
Description: Text Data
- guix.el: Key bindings for a "package list", Alex Kost, 2014/09/05
- Re: guix.el: Key bindings for a "package list", Ludovic Courtès, 2014/09/05
- Re: guix.el: Key bindings for a "package list", Alex Kost, 2014/09/05
- Re: guix.el: Key bindings for a "package list", Ludovic Courtès, 2014/09/05
- Re: guix.el: Key bindings for a "package list",
Alex Kost <=
- Re: guix.el: Key bindings for a "package list", Taylan Ulrich Bayirli/Kammer, 2014/09/06
- guix.el & multiple outputs, Ludovic Courtès, 2014/09/06
- Re: guix.el & multiple outputs, Taylan Ulrich Bayirli/Kammer, 2014/09/06
- Re: guix.el & multiple outputs, Ludovic Courtès, 2014/09/08
- Re: guix.el & multiple outputs, Alex Kost, 2014/09/07
- Re: guix.el & multiple outputs, Alex Kost, 2014/09/19
- Re: [PATCH] emacs: Rewrite scheme side in a functional manner., Ludovic Courtès, 2014/09/20
- Re: [PATCH] emacs: Rewrite scheme side in a functional manner., Alex Kost, 2014/09/21
- Re: [PATCH] emacs: Rewrite scheme side in a functional manner., Ludovic Courtès, 2014/09/21
- Re: [PATCH] emacs: Rewrite scheme side in a functional manner., Alex Kost, 2014/09/23