From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Yuri Khan Newsgroups: gmane.emacs.devel Subject: Re: delete-selection-mode as default Date: Mon, 17 Sep 2018 12:28:47 +0700 Message-ID: References: NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Trace: blaine.gmane.org 1537162026 17866 195.159.176.226 (17 Sep 2018 05:27:06 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Mon, 17 Sep 2018 05:27:06 +0000 (UTC) Cc: hw@adminart.net, spacibba@aol.com, joostkremers@fastmail.fm, npostavs@gmail.com, emacs-devel@gnu.org, acm@muc.de, eliz@gnu.org, phillip.lord@russet.org.uk To: drew.adams@oracle.com Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Sep 17 07:27:01 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1g1m3o-0004VX-Kz for ged-emacs-devel@m.gmane.org; Mon, 17 Sep 2018 07:27:00 +0200 Original-Received: from localhost ([::1]:33741 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1g1m5v-0007pt-2S for ged-emacs-devel@m.gmane.org; Mon, 17 Sep 2018 01:29:11 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:60031) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1g1m5l-0007nf-LV for emacs-devel@gnu.org; Mon, 17 Sep 2018 01:29:02 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1g1m5k-0002E7-S0 for emacs-devel@gnu.org; Mon, 17 Sep 2018 01:29:01 -0400 Original-Received: from mail-oi0-x236.google.com ([2607:f8b0:4003:c06::236]:39817) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1g1m5j-0002Cp-KG; Mon, 17 Sep 2018 01:28:59 -0400 Original-Received: by mail-oi0-x236.google.com with SMTP id c190-v6so17789117oig.6; Sun, 16 Sep 2018 22:28:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=VBFBZZzdOap6efb3A61LPWaTPkwp+CYaVoTJ1JzbbSg=; b=IV+wkIK5YnmFPM7S/aQGCi3DuaWbQkM6Vtc9aln5Q2kNe9VeFMl7+PzX3eBx4PO5Hj hM5QB16MHYw3mOGxgzVaLdEd2iDork7UzIf0Psco94/G8Z0q+U0PM93m4luRuxyQuqtE Kc2WwQ3KRZwo3BU0hNQh0xI/AHQubNXMMF+cq3ZfMn+UaYZQ7eqbKX5lf5vQQMnqxsVZ hV7F+D0aIJ/hgrxJ2/ml2uLE3RZiTXIcC+iizOEbkqZ5wrclnoRMaLzgWdPPND2W6hAC Q0Pog7fugYnpf1zJLe0m/q0jL2H7XZo6o3wxz0JtWTYfEBjE/2q6+FDiALKVAvFd1SQA s4Pw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=VBFBZZzdOap6efb3A61LPWaTPkwp+CYaVoTJ1JzbbSg=; b=WUcnzqrfKcQKHO/6Ss6L3BmDgnJwUfNuwiyvWKxfPOhpoymzRh51jh8ZmVgLYToSFM 7TKLeexWvmdHLOFv8tOQ97Jb5BmgJrhKav8WYcG2rB4riZnjcx9PCP8d3vJ5ijSBGJqf jQRV2Fz9q9SbvsXFR0Jhos/ZRAfCL4nm2XPlpLmls13hebfXz8eAXUZ9PiZsIufNgEP9 m6bG/mxIRiCfnyNW/4Qc75NAkc05xsGHSzEBPUi1rOVe0DH1Oqp9yWeyOzjVm5AhYauc TYcXYpF91UysHgv3ZosJhv07jhfD9CmTuXz6KgI2SHosvHDZ+u+MOM+sviETAiM5POB4 HdqQ== X-Gm-Message-State: APzg51ADmuU+EipTA9cViJhCdrjzN8QA6Fyv6u9+01GznEvnHcXJlw7i lKKgvW+eiRu1I3RmAd4rJG3Sh7DwJ32G5bSPhQ4= X-Google-Smtp-Source: ANB0VdaeOxR8ro9fJhbPPmChZDNtIqFCJaXKWzACFCJJUr4B4C5MiqR3zCXZ3Y9ACAcfISfWvYJiDqXM3EF2PiS4wjM= X-Received: by 2002:aca:3a57:: with SMTP id h84-v6mr16184049oia.336.1537162138921; Sun, 16 Sep 2018 22:28:58 -0700 (PDT) In-Reply-To: X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4003:c06::236 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:229885 Archived-At: On Mon, Sep 17, 2018 at 3:29 AM Drew Adams wrote: > > > The point of persistent blocks is that you can mark a region and leav= e > > > it for a while before actually doing something to it. It is not a goa= l > > > to be able to mark a block somewhere far away without ever leaving > > > your position. > > > > And how, may I ask, you then indicate which of the "blocks" is to be > > acted upon by some command? > > How do you choose anything in Emacs? There are many ways. [=E2=80=A6] > > (But I wonder why you even ask such a question.) No, it is a valid question, and possibly one of the reasons why persistent blocks went out of fashion. As I understand it, the pure persistent block model started out in single-buffer, single-window editors. In that setup, there is never more than one block. As soon as you have buffers and windows, the =E2=80=9Cwhich one?=E2=80=9D q= uestion arises, and there are two major ways to answer it. * You can say the block is global; if you select a block in buffer B, then the block in buffer A is unselected. But this works against the general idea of block persistence. * Or you can say every buffer or window can have a block. Then you can have an easy gesture for copying/moving/deleting the block in the current buffer/window, but no natural way of direct inter-buffer or inter-window copying/moving. (Asking the user a question equivalent to =E2=80=9Cplease type the first few characters of the selected region you=E2= =80=99d like to copy and press TAB or, at your leisure, make your way through the 123 blocks currently active, one M-n at a time=E2=80=9D is probably not the answer.) Several editors that had persistent blocks and multiple buffers arrived at the mixed model: persistent buffer-local blocks + clipboard. You can copy and move blocks within the current buffer directly, but if you want to copy or move across buffers, you go to the source buffer, copy or cut to clipboard, then go to the target buffer and paste. Of course you can also do that in a single buffer. So you now have two ways of doing the same things, and the less versatile one falls into disuse. You now use the clipboard for most copy and move operations. Now there is a subtle shift in your workflow. Before, you could mark a block, go to the target position, and press C-k v to move the block here. Now, when you cut, point is moved to where you cut from, because otherwise you could accidentally cut something and not notice it. So you cut right after selecting, and now persistent blocks lose most of the appeal.