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: Fri, 14 Sep 2018 20:41:46 +0700 Message-ID: References: <83k1nxvm5j.fsf@gnu.org> <87sh2ih0bp.fsf@fastmail.fm> <770f48a8-664a-40ae-8e03-19f6aad248b6@default> <20180910181615.GA4829@ACM> <874lev3bq4.fsf@toy.adminart.net> <20180912131602.GA5582@ACM> <87d0tihxzw.fsf@toy.adminart.net> <20180913174640.GB4019@ACM> <8736udkuit.fsf@toy.adminart.net> <20180914104833.GA4103@ACM> 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 1536932439 21843 195.159.176.226 (14 Sep 2018 13:40:39 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Fri, 14 Sep 2018 13:40:39 +0000 (UTC) Cc: hw@adminart.net, spacibba@aol.com, Joost Kremers , Noam Postavsky , Emacs developers , Eli Zaretskii , Drew Adams , Phillip Lord To: Alan Mackenzie Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Sep 14 15:40:34 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 1g0oKn-0005ZA-53 for ged-emacs-devel@m.gmane.org; Fri, 14 Sep 2018 15:40:33 +0200 Original-Received: from localhost ([::1]:51816 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1g0oMt-00072n-Dc for ged-emacs-devel@m.gmane.org; Fri, 14 Sep 2018 09:42:43 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:59144) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1g0oMD-00072g-JK for emacs-devel@gnu.org; Fri, 14 Sep 2018 09:42:02 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1g0oMC-0001mO-K5 for emacs-devel@gnu.org; Fri, 14 Sep 2018 09:42:01 -0400 Original-Received: from mail-oi0-x22c.google.com ([2607:f8b0:4003:c06::22c]:43560) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1g0oMC-0001lh-Cl; Fri, 14 Sep 2018 09:42:00 -0400 Original-Received: by mail-oi0-x22c.google.com with SMTP id b15-v6so12816466oib.10; Fri, 14 Sep 2018 06:42:00 -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=Zr2Ceb3hUJ9iuI91F5xRZ6PXQdnhhQuiwcggMreKpDA=; b=Gtvs5nL7mAc6eKZtDa2vKVbXtITKLk+yxhBypssTVJbHcw5mmcsyEp3GuCpsSUE4Ep 2JJHOsAPyvHA4cWnI8+4n5mrQStM7ry3b5aPOYUH9wwO7H0gHSerwTYjPxQu7iSfH4ZT jM0CWLuNYIFUNwBXyGQDma8JyjXm+2ZVQsi5xyCmOjNjlJ4RxgorU6xNLo4zyb8/rzB6 hfUL+pxY7jehyQ1dzn7QqB0d9sMy8c68OBI2AFLesx0GhBVtyPRVKmgt29Tw2y7BxIvX 9xYqJPmsaJfIuhM7TYHIeWj5gjoBqRQMb5se0CK93ov8s6PhGh2ajwaBVWFOuWIQ40PF BG4A== 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=Zr2Ceb3hUJ9iuI91F5xRZ6PXQdnhhQuiwcggMreKpDA=; b=FcipTZYFZ4n4EjBsaC65geRiCb9pMfOBoD9YyNSvOgG3NTKbx9cTvhZo/N1mLrX/I3 I9qAygaCeA1rg3L0w7GeDPbgu6urpxnCW00qKhlppp/TrRkIWvfZS/8sBEC8bffrh+MY zqRLR3/cEAfUVzbY3Lbjtp9WYNjUZse7IdTLQKSdzEQon0zTkbzIU2kEXx8MpWRAfVyz JFcQrrhD64bMy1KRZn+2NtJvYvkpssYTUXZ2NFEIauJ8DseniuODX0JA5SEi/45U7R/o 4S0Rq/BsbEEpwxMU9FLy6Ae+g1k+xGL3QwrLETh8bgO0KYXW9M1G+qwCKofIzmKdIMom H/dQ== X-Gm-Message-State: APzg51AdpBmpij2++ZsrJDJqKTsYaCFH6achPikp2nOUzsopmyTbbbPr eF83924NYXa5fUIGSNdWqzw+iYpOq9/aHxBsYnI= X-Google-Smtp-Source: ANB0VdbSh/ucJ3i9C2VOL/LFMeG7OSdDfLrQolkCojgk7OFgcv2tHQiu87+4w+sdHya9Q8g6nHZDZNKFTzrUSE4fOKI= X-Received: by 2002:aca:3a57:: with SMTP id h84-v6mr9512352oia.336.1536932519397; Fri, 14 Sep 2018 06:41:59 -0700 (PDT) In-Reply-To: <20180914104833.GA4103@ACM> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4003:c06::22c 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:229777 Archived-At: On Fri, Sep 14, 2018 at 5:52 PM Alan Mackenzie wrote: > Why are you using Emacs at all? You seem to dislike its core concepts > and methods fairly strongly. There are other editors available, some of > which will more closely approximate the way you want to handle > selections. Why are you sticking with Emacs? *The* core concept of Emacs as I understand it is its infinite customizability, and this is pretty much the main reason I stick with it. I dislike the default Emacs keybindings, but that=E2=80=99s not a problem because I can easily redefine them. I consider the default looks of the modeline too cryptic, but that=E2=80=99= s not a problem because I can reconfigure it. In my editor, I want tabs, line numbers, visible whitespace, and shift selection. In Emacs, they all are just a few configuration options away. (Okay, no, tabs have to be customized heavily before they are useful for me.) One other thing that I want is that the region be highlighted if and only if it is going to be the target of the next command I give, because I like to look before I leap. It seems transient-mark-mode is intended to give me this by adding the concept of active region and highlighting the region when it is active. However, many commands act on the region even if it is inactive. kill-region and copy-region-as-kill are two such commands. I am sure there are many more, because it is much easier to write: (defun my-command (BEGIN END) (interactive "r") ;; do something between BEGIN and END ) than: (defun my-command (BEGIN END) (interactive (if (use-region-p) (list (min (point) (mark)) (max (point) (mark))) ;; figure out what to do when no region is active ;; * act on the whole buffer ;; * act on the current narrowing ;; * signal an error ;; * do something else sensible (list ?? ??))) ;; do something between BEGIN and END ) With transient-mark-mode being the Emacs default, I=E2=80=99m inclined to consider it a bug that certain commands act on the inactive region when t-m-m is enabled, and possibly a flaw that (interactive "r") makes it so easy to define such commands. I was one of two people here to suggest that it is a bad thing that the mark is used both as a navigation mechanism and as a region delimiter, but, in practice, it would not matter much if the above issue was addressed.