From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Dmitry Gutov Newsgroups: gmane.emacs.bugs Subject: bug#42145: vc-git file order mismatch between vc-dir and vc-diff Date: Wed, 1 Jul 2020 01:08:04 +0300 Message-ID: References: <87bll048br.fsf@mail.linkov.net> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="11673"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.8.0 To: Juri Linkov , 42145@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Wed Jul 01 00:09:11 2020 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jqORC-0002vb-Qe for geb-bug-gnu-emacs@m.gmane-mx.org; Wed, 01 Jul 2020 00:09:10 +0200 Original-Received: from localhost ([::1]:58350 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jqORB-0003lg-Oh for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 30 Jun 2020 18:09:09 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:58352) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jqOR4-0003lF-QT for bug-gnu-emacs@gnu.org; Tue, 30 Jun 2020 18:09:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:40339) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jqOR4-0000hH-Hf for bug-gnu-emacs@gnu.org; Tue, 30 Jun 2020 18:09:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jqOR4-00087R-At for bug-gnu-emacs@gnu.org; Tue, 30 Jun 2020 18:09:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 30 Jun 2020 22:09:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 42145 X-GNU-PR-Package: emacs Original-Received: via spool by 42145-submit@debbugs.gnu.org id=B42145.159355489531155 (code B ref 42145); Tue, 30 Jun 2020 22:09:02 +0000 Original-Received: (at 42145) by debbugs.gnu.org; 30 Jun 2020 22:08:15 +0000 Original-Received: from localhost ([127.0.0.1]:51885 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jqOQJ-00086R-9r for submit@debbugs.gnu.org; Tue, 30 Jun 2020 18:08:15 -0400 Original-Received: from mail-wr1-f65.google.com ([209.85.221.65]:42344) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jqOQH-00086E-En for 42145@debbugs.gnu.org; Tue, 30 Jun 2020 18:08:13 -0400 Original-Received: by mail-wr1-f65.google.com with SMTP id o11so21678972wrv.9 for <42145@debbugs.gnu.org>; Tue, 30 Jun 2020 15:08:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:subject:to:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=uEgKeqrkQxj9+NFOdI8REVVKqBdi3GscF0dvz4fRdbo=; b=MFVY5ZgkaTqH5Gx8cgfH9ikk6OAKCaOJBbebpN1WHiNLQJI9QGkT4PUiDSAl7jwtzG mdSsu3HA8S08Enlggdljd9v9KTnLQho3fpXwi7kgwUmJKKxYyeconZ19nA343JeAxjU5 oqqeV1aVq0srKgHZz6Jmy1Z8y4iGWVbpy2kPn9B15dj6z3NMf4fUjkCZyxzUI83APCxt 2BjI/lGb/VH/TgshIqPapp7aRtwxWysJ9HJkNS0b9Dk7/3jz7+zBek6YWNyCpo9VgiXp XcAnRjHEMYvOQ8foEPODrrY14e6UXTAl4T2es7yvRxAhpfBDcMMhiDXEqCVeWnPLnp/V LwnA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:subject:to:references:from:message-id :date:user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=uEgKeqrkQxj9+NFOdI8REVVKqBdi3GscF0dvz4fRdbo=; b=mFAdi0pbBDe+F2/3Vf/PD5xJVXQq0qFiHWJP8UZtdv1SdwLl14N3TRDoB1q2R9bOhG +fKrdXcFlC9E7AF6DcX+fPQok6Pw+0w7tNe9m/bRMb3+gTEK7bhOroswjKQDdX3kn8ps p6BkvDNap8UBNzBUH5nYFKvJpx9t1GKu13G5hychdk2zfAgjKyQqDvdbyRRUZkPgOPUm eK+E7ixo7Dkgsrlh6ojZakDHvUcAL0gaeiGChr0pbmk+vgqHqMepHOhFUzW/IC2pysli 3rAeUFRI5fSZUjfcBpXioKS9Uk5aMSr3h/IU80PLW9UjpUySO12cjItoCVe93kwELDUe NsOA== X-Gm-Message-State: AOAM530qeXKOJ+Ec0l2f1xfR6smUwifPEcrannErBTQIQFDp23s1oCr2 MH6CetHhOvcEOr4IimSCBs9GyuR+ X-Google-Smtp-Source: ABdhPJx75aF/ZJlxOcNJ8KaYSW+zd5zHa80JnrJjmZ2Abb3clppp7/YsCfB0l+LOWwsEaXBmeB8xuQ== X-Received: by 2002:adf:a491:: with SMTP id g17mr24959049wrb.132.1593554887217; Tue, 30 Jun 2020 15:08:07 -0700 (PDT) Original-Received: from [192.168.0.3] ([66.205.73.129]) by smtp.googlemail.com with ESMTPSA id k14sm4847150wrn.76.2020.06.30.15.08.06 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 30 Jun 2020 15:08:06 -0700 (PDT) In-Reply-To: <87bll048br.fsf@mail.linkov.net> Content-Language: en-US X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:182589 Archived-At: On 30.06.2020 23:57, Juri Linkov wrote: > There is an old usability problem in vc-dir. > > Typing ‘=’ in a vc-dir buffer displays a vc-diff buffer where files are > sorted by different order than files are sorted in the vc-dir buffer. vc-dir has its own presentation logic, it's pretty complex. 'git diff' has a '-O' argument, which accepts . Maybe it'll help, but I kind of doubt that. Ideas welcome. > For example, there is a need to commit only part of changes. > To decide what files should be marked in the vc-dir buffer, > a convenient way is to browse diffs in the vc-diff buffer > one by one and mark corresponding files in the vc-dir buffer. > But since these file lists are in different order, the task > becomes a major hassle because vc-diff doesn't distinguish > between files and directories while sorting them by name, > but vc-dir puts directories at the end after files. Here's a bigger feature I've wanted to see in VC for a while: commit from a diff. There is a third-party package: https://github.com/caldwell/commit-patch But it implements some of its logic in Perl, and the message buffer it creates is non-standard. I'd really like to see it ported to VC. The idea is, you open a diff, maybe split some of the hunks, kill the ones you don't need (diff-mode supports all these operations), and then commit the remaining ones, from multiple files, if needed. Seems like a good replacement for 'git add -p' for Emacs power users.