GNU bug report logs - #64185
proposal for new function: copy-line

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Severity: wishlist; Reported by: Zachary Kanfer <zkanfer@HIDDEN>; dated Tue, 20 Jun 2023 05:09:02 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.
Severity set to 'wishlist' from 'normal' Request was from Stefan Kangas <stefankangas@HIDDEN> to control <at> debbugs.gnu.org. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 1 Jul 2023 10:33:15 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jul 01 06:33:15 2023
Received: from localhost ([127.0.0.1]:56697 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qFXuk-0000ZL-Oo
	for submit <at> debbugs.gnu.org; Sat, 01 Jul 2023 06:33:15 -0400
Received: from mail-lf1-f50.google.com ([209.85.167.50]:62620)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mattias.engdegard@HIDDEN>) id 1qFXuh-0000Z8-UK
 for 64185 <at> debbugs.gnu.org; Sat, 01 Jul 2023 06:33:12 -0400
Received: by mail-lf1-f50.google.com with SMTP id
 2adb3069b0e04-4fba03becc6so2829890e87.0
 for <64185 <at> debbugs.gnu.org>; Sat, 01 Jul 2023 03:33:11 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20221208; t=1688207586; x=1690799586;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:sender:from:to:cc:subject
 :date:message-id:reply-to;
 bh=UAYrvRLiKuAxZPjk7i7Q9hnF8QNQBrijKFaViKxOH6E=;
 b=AdOfEswgwjXDqTMjGBsF7zN+pOYFDV1Mq8HwQEnIfvVbHdVUI1o46IOofHqxrlywdj
 FzDZ0kRY9H5jt2CsBEg1EZQ0V/w52+2ggZbuftOLaFPCeR0jlC6KdEkv+LeuBlO6l2CU
 cH7wgyYLDIgA8td8RmfJ9L3x73UQEz47qN6QthsgfBAHfZttLpd2pLXB4ISK+yfJuZlP
 tPEoLoI65QlLtlqNYYR0ZhnIRBmV53WkAvO7KHOOP0rYLplv+/sxfTzq8QfNH/CFTaLP
 YU5T0xsBObTZ7aHi4JN3ZWQMd0dDtEMyVbcN/fr8OVLAAXOfUDokN9Rshp5zZOU7ctfD
 pGAg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20221208; t=1688207586; x=1690799586;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:sender:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=UAYrvRLiKuAxZPjk7i7Q9hnF8QNQBrijKFaViKxOH6E=;
 b=dTmVDG24g//F5Oyx+ozHtFHmXOmq3ypb6XdXSWL93GPZEWSQpjhxbFjeOztQ1N/Jfr
 4WOXmPTsbDQ6iKmfOhXhEnfYAVy7j8GHjGCq1KcuoJpw2KU8YDCdLmvX+N9nvGsJ75sP
 sfQmLVknwqE6hb0moDWM2unF6OpEzhO12FSv6pA3ta7BPgk020n8Nei+vEw2qHxC3zvy
 mYsRZvd8pjP9aZmyiZ1xg1xgrHsvYO87Owz5Qf6iQGp6CGD0b2VOOeMlfmLPMgUDcrxk
 zLIEtH9Z7hpYNYTOz5OvEkWcCxOR9CJOg8y3sM8w6jYvKqOcwyCH8zgg3of6u/r0cXva
 lvvw==
X-Gm-Message-State: ABy/qLYw3fKm9RBRSh7pGGEbC4Tpiy1CTgD5vT0btKgK+7E26DLmhsOr
 sg92djzrH9KzmRaA+uew+DKS2eYYwV8=
X-Google-Smtp-Source: APBJJlEao8z5k7JHDNewvIHpbf+n7d49DMge4ojFXpuyMF/GCkSTR6/dgStPiXyF7px1oTUf4vXriA==
X-Received: by 2002:a05:6512:39d3:b0:4fb:103f:7d56 with SMTP id
 k19-20020a05651239d300b004fb103f7d56mr1775289lfu.14.1688207585547; 
 Sat, 01 Jul 2023 03:33:05 -0700 (PDT)
Received: from smtpclient.apple (c188-150-165-235.bredband.tele2.se.
 [188.150.165.235]) by smtp.gmail.com with ESMTPSA id
 x2-20020ac24882000000b004fb99da37e3sm1284826lfc.220.2023.07.01.03.33.05
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Sat, 01 Jul 2023 03:33:05 -0700 (PDT)
Content-Type: text/plain;
	charset=us-ascii
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.15\))
Subject: Re: bug#64185: proposal for new function: copy-line
From: =?utf-8?Q?Mattias_Engdeg=C3=A5rd?= <mattias.engdegard@HIDDEN>
In-Reply-To: <835y74q6cn.fsf@HIDDEN>
Date: Sat, 1 Jul 2023 12:33:04 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <8AC42DC5-A6BF-413A-862E-9508D6E8C03E@HIDDEN>
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <86o7l66rw8.fsf@HIDDEN>
 <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN>
 <86a5wnmu3x.fsf@HIDDEN>
 <62289D18-9F94-47E5-8D2B-DBDB35C2E2DB@HIDDEN>
 <86r0pyt9a9.fsf@HIDDEN>
 <AB835F7C-F245-495C-9159-44899B8821E5@HIDDEN>
 <86fs6cn42v.fsf@HIDDEN>
 <9383E91E-0F4D-4B54-B999-6A42581CFF95@HIDDEN>
 <86leg3trew.fsf@HIDDEN> <83zg4jtoud.fsf@HIDDEN>
 <86cz1ezqou.fsf@HIDDEN>
 <EC52BE73-7BC3-441F-BCA2-C835110F3266@HIDDEN> <83jzvksrfu.fsf@HIDDEN>
 <87C322EC-8F62-4A93-ACD8-FE5F3383FF8A@HIDDEN> <837crkq7os.fsf@HIDDEN>
 <785E4C9D-EFE7-4A47-8CA3-D8308F4281A8@HIDDEN> <835y74q6cn.fsf@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
X-Mailer: Apple Mail (2.3654.120.0.1.15)
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN, zkanfer@HIDDEN,
 juri@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

1 juli 2023 kl. 12.22 skrev Eli Zaretskii <eliz@HIDDEN>:

> I don't object to installing your changes, I just don't want to risk
> any more unnecessary breakage on the release branch.

There is no particular risk for that, but I'll make the changes to =
master instead.
(Except for two tiny fixes pushed to emacs-29, assuming they would =
qualify.)





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 1 Jul 2023 10:21:56 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jul 01 06:21:56 2023
Received: from localhost ([127.0.0.1]:56675 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qFXjn-00006g-M2
	for submit <at> debbugs.gnu.org; Sat, 01 Jul 2023 06:21:55 -0400
Received: from eggs.gnu.org ([209.51.188.92]:60556)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1qFXjl-00006S-2u
 for 64185 <at> debbugs.gnu.org; Sat, 01 Jul 2023 06:21:54 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qFXje-0003QF-1b; Sat, 01 Jul 2023 06:21:47 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=BIneynru83GucTIkZodArl1oaMYDC7q/8xA0JvLLiwo=; b=ZaGBaNsC1L9/nzfShC+O
 LE7+6CrnQYUii+RVeTDjj4SZqonIUUJQHf7SS6OfWdPO6yzN5jc+Zdd0BfL+XcLQshrHK7XrQh/bt
 OxBYk9kD/FQacMujlRCjMg1CF3Z2rhvTz7waE7VCarehPuZat7pGeQRzZDkO6LscdQ0XCTrTdvYAp
 Ox9YZC4ou0uByJWVxXBX434Q5+sscR5tbetuMa5RQS01GkQUhlNnQDYewE4biuZcjQTRpIm/APb8s
 vL6S/lEayCkYLNJj3aCPNuXhw3dTReHXc4/xX2EePzHAlsexDe4BRP/gizKiD3kM/2+B3i6XcFovB
 5jWLkKG0V9Yhrg==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qFXjd-00048G-Mf; Sat, 01 Jul 2023 06:21:45 -0400
Date: Sat, 01 Jul 2023 13:22:16 +0300
Message-Id: <835y74q6cn.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Mattias =?utf-8?Q?Engdeg=C3=A5rd?= <mattias.engdegard@HIDDEN>
In-Reply-To: <785E4C9D-EFE7-4A47-8CA3-D8308F4281A8@HIDDEN> (message from
 Mattias =?utf-8?Q?Engdeg=C3=A5rd?= on Sat, 1 Jul 2023 12:07:15 +0200)
Subject: Re: bug#64185: proposal for new function: copy-line
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <86o7l66rw8.fsf@HIDDEN>
 <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN>
 <86a5wnmu3x.fsf@HIDDEN>
 <62289D18-9F94-47E5-8D2B-DBDB35C2E2DB@HIDDEN>
 <86r0pyt9a9.fsf@HIDDEN>
 <AB835F7C-F245-495C-9159-44899B8821E5@HIDDEN>
 <86fs6cn42v.fsf@HIDDEN>
 <9383E91E-0F4D-4B54-B999-6A42581CFF95@HIDDEN>
 <86leg3trew.fsf@HIDDEN> <83zg4jtoud.fsf@HIDDEN>
 <86cz1ezqou.fsf@HIDDEN>
 <EC52BE73-7BC3-441F-BCA2-C835110F3266@HIDDEN> <83jzvksrfu.fsf@HIDDEN>
 <87C322EC-8F62-4A93-ACD8-FE5F3383FF8A@HIDDEN> <837crkq7os.fsf@HIDDEN>
 <785E4C9D-EFE7-4A47-8CA3-D8308F4281A8@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN, zkanfer@HIDDEN,
 juri@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Mattias Engdegård <mattias.engdegard@HIDDEN>
> Date: Sat, 1 Jul 2023 12:07:15 +0200
> Cc: juri@HIDDEN,
>  64185 <at> debbugs.gnu.org,
>  me@HIDDEN,
>  zkanfer@HIDDEN
> 
> 1 juli 2023 kl. 11.53 skrev Eli Zaretskii <eliz@HIDDEN>:
> 
> > In a way that doesn't make any significant changes in
> > rectangle--duplicate-right, for example.
> 
> That's just the part of duplicate-dwim that lives in rect.el.

I understand, but the changes are non-trivial, and I cannot see any
urgency to doing that on emacs-29.  We lived with the current
implementation for a year.

> > The difference is that (a) duplicate-line was a feature which was
> > explicitly requested by the bug report which caused its
> > implementation, and (b) the changes for duplicate-line were much
> > simpler and easier to reason about.
> 
> They weren't really simpler, but that's not the point. It's about finishing a job properly.
> I certainly understand the motivation behind the bug and see that it applies to duplicate-dwim as well.
> We usually don't respond to requests by narrowly implementing just what the reporter asked about and nothing else.

I don't object to installing your changes, I just don't want to risk
any more unnecessary breakage on the release branch.  My point about
duplicate-dwim is that it was added at our initiative, so extending it
could wait till Emacs 30.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 1 Jul 2023 10:07:26 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jul 01 06:07:26 2023
Received: from localhost ([127.0.0.1]:56630 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qFXVm-00089P-Br
	for submit <at> debbugs.gnu.org; Sat, 01 Jul 2023 06:07:26 -0400
Received: from mail-lj1-f169.google.com ([209.85.208.169]:57588)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mattias.engdegard@HIDDEN>) id 1qFXVj-000898-J1
 for 64185 <at> debbugs.gnu.org; Sat, 01 Jul 2023 06:07:24 -0400
Received: by mail-lj1-f169.google.com with SMTP id
 38308e7fff4ca-2b698937f85so45454691fa.2
 for <64185 <at> debbugs.gnu.org>; Sat, 01 Jul 2023 03:07:23 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20221208; t=1688206037; x=1690798037;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:sender:from:to:cc:subject
 :date:message-id:reply-to;
 bh=Zc+itRmdxSFwroUwu2EsZTVpPdC5pJsPXTzH9Z8xKkc=;
 b=K4RA69pfVl1yQbPM6+7JxfRENztYkwRTD2XUhNpgGurKnKiQ6xViPqDw1AG+Ga8ScB
 Mp8LwIg/sBeuM1rOPmu6rUXIcd+znpcQ5xXAYQ+4Z5DdeYZU8yVSJ6yENdxOqITaUJaS
 RZ0HdPf/zdD5y0m1iRn1iT1MOQy14YcR3+76P4PvRA/gVNEtR/1B0apOA3fy01Hrs8E8
 sDiPmR+Z6pXVJHRHzhybQ/WqrliTfSluI0A5YJW7Fny+PIsCNC3sB3CGwNO4d4ZTN++y
 Vb7oXnb76bJVUXoVmUaSKAQJ0nAj1yaqWQLeQ9ZCdYrzdNPp3jx7T49KvTbb6dXipaLV
 WB0w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20221208; t=1688206037; x=1690798037;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:sender:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=Zc+itRmdxSFwroUwu2EsZTVpPdC5pJsPXTzH9Z8xKkc=;
 b=J8SoeDrtODbjlOjbwJpUbxiLxaHVn+2lnBZeaQL6ZcHqfxHsknmktbgmSMEis4B7KI
 jsGk7vUHwJxz6321YMTpYTHj0TEFkYgpiufRrEoJPZcrf4WPySpsqQCUPp6rJjfCh/4v
 Ai5udQ8Un6n8p6w9XEWQYF31jzpgH7J++VE4p7aIQWhG8IUZCTZiI5JVvT8EYmisySNh
 v70yI7EB8w4ZcCBXdxQ6SV3ow/rNNz6Y44mICcSy4Fz61ONxOcmyoGiszprlUwDpRJ9Q
 pKfVJ2FHuygcf5t05ziT1t9K9G7sGED/XG1mPP/CgCs5aT+vj8CjPWIi5QG3PjcWLcTH
 MnRA==
X-Gm-Message-State: ABy/qLaLFIe1+EtBdCvpkf37Hp3RqeEC9SVNYF+kU55ICptBv+d+qGVZ
 fsIXc/mVgFrLb09BMdIqQe8=
X-Google-Smtp-Source: APBJJlFwPuuZ8iMsgZ4SuC05QJvTIfZCChApndQjBFC+wWlwLFnEfN95Vt8v/uBnZdyGsu8tMKfOCg==
X-Received: by 2002:a05:6512:447:b0:4fb:94fd:645f with SMTP id
 y7-20020a056512044700b004fb94fd645fmr3789366lfk.68.1688206037386; 
 Sat, 01 Jul 2023 03:07:17 -0700 (PDT)
Received: from smtpclient.apple (c188-150-165-235.bredband.tele2.se.
 [188.150.165.235]) by smtp.gmail.com with ESMTPSA id
 b13-20020ac2562d000000b004fb73bea65esm2836644lff.25.2023.07.01.03.07.16
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Sat, 01 Jul 2023 03:07:16 -0700 (PDT)
Content-Type: text/plain;
	charset=us-ascii
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.15\))
Subject: Re: bug#64185: proposal for new function: copy-line
From: =?utf-8?Q?Mattias_Engdeg=C3=A5rd?= <mattias.engdegard@HIDDEN>
In-Reply-To: <837crkq7os.fsf@HIDDEN>
Date: Sat, 1 Jul 2023 12:07:15 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <785E4C9D-EFE7-4A47-8CA3-D8308F4281A8@HIDDEN>
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <86o7l66rw8.fsf@HIDDEN>
 <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN>
 <86a5wnmu3x.fsf@HIDDEN>
 <62289D18-9F94-47E5-8D2B-DBDB35C2E2DB@HIDDEN>
 <86r0pyt9a9.fsf@HIDDEN>
 <AB835F7C-F245-495C-9159-44899B8821E5@HIDDEN>
 <86fs6cn42v.fsf@HIDDEN>
 <9383E91E-0F4D-4B54-B999-6A42581CFF95@HIDDEN>
 <86leg3trew.fsf@HIDDEN> <83zg4jtoud.fsf@HIDDEN>
 <86cz1ezqou.fsf@HIDDEN>
 <EC52BE73-7BC3-441F-BCA2-C835110F3266@HIDDEN> <83jzvksrfu.fsf@HIDDEN>
 <87C322EC-8F62-4A93-ACD8-FE5F3383FF8A@HIDDEN> <837crkq7os.fsf@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
X-Mailer: Apple Mail (2.3654.120.0.1.15)
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN, zkanfer@HIDDEN,
 juri@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

1 juli 2023 kl. 11.53 skrev Eli Zaretskii <eliz@HIDDEN>:

> In a way that doesn't make any significant changes in
> rectangle--duplicate-right, for example.

That's just the part of duplicate-dwim that lives in rect.el.

> The difference is that (a) duplicate-line was a feature which was
> explicitly requested by the bug report which caused its
> implementation, and (b) the changes for duplicate-line were much
> simpler and easier to reason about.

They weren't really simpler, but that's not the point. It's about =
finishing a job properly.
I certainly understand the motivation behind the bug and see that it =
applies to duplicate-dwim as well.
We usually don't respond to requests by narrowly implementing just what =
the reporter asked about and nothing else.





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 1 Jul 2023 09:52:59 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jul 01 05:52:59 2023
Received: from localhost ([127.0.0.1]:56617 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qFXHn-0007lX-9G
	for submit <at> debbugs.gnu.org; Sat, 01 Jul 2023 05:52:59 -0400
Received: from eggs.gnu.org ([209.51.188.92]:35860)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1qFXHm-0007lK-0E
 for 64185 <at> debbugs.gnu.org; Sat, 01 Jul 2023 05:52:58 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qFXHg-0001dd-5e; Sat, 01 Jul 2023 05:52:52 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=F3OEb6WmEWkF6i9CepYTDeqptFbWvlr2QvtgwHfXFps=; b=PP4f5YHIKR0WfiHDJHQz
 xukC66GyGkYzDGXHVl0YdnMIutMsIENt0NY7AfsEMW7J3td94bX5AJ/zueRdUBDc6TkKmVWPHX4+e
 O5EWmKg3Ps09qwf9gP0Q90vIRzkXrH/0oQ1p9b70nbRZdfpg9Egf2EbvhA5nYoxIhTuEi+f7M6tX2
 Lz6e4GYm+JtepXkKwvBh4yWVP/3AadF4u6P1Im65mDpf5Z+WKe1wIlE/MP0eZ1G3H++k2NF64Uxjw
 BDOWsIfP/Ynn6FQ0EaFQB++ceVPwgPETghAu8zdwfNgeG+j1LvydMhhHO5IixNYCj0IgH9oAXByJA
 u9X/rh8cAAtHhA==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qFXHf-0003Hw-Jn; Sat, 01 Jul 2023 05:52:51 -0400
Date: Sat, 01 Jul 2023 12:53:23 +0300
Message-Id: <837crkq7os.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Mattias =?utf-8?Q?Engdeg=C3=A5rd?= <mattias.engdegard@HIDDEN>
In-Reply-To: <87C322EC-8F62-4A93-ACD8-FE5F3383FF8A@HIDDEN> (message from
 Mattias =?utf-8?Q?Engdeg=C3=A5rd?= on Sat, 1 Jul 2023 10:45:35 +0200)
Subject: Re: bug#64185: proposal for new function: copy-line
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <86o7l66rw8.fsf@HIDDEN>
 <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN>
 <86a5wnmu3x.fsf@HIDDEN>
 <62289D18-9F94-47E5-8D2B-DBDB35C2E2DB@HIDDEN>
 <86r0pyt9a9.fsf@HIDDEN>
 <AB835F7C-F245-495C-9159-44899B8821E5@HIDDEN>
 <86fs6cn42v.fsf@HIDDEN>
 <9383E91E-0F4D-4B54-B999-6A42581CFF95@HIDDEN>
 <86leg3trew.fsf@HIDDEN> <83zg4jtoud.fsf@HIDDEN>
 <86cz1ezqou.fsf@HIDDEN>
 <EC52BE73-7BC3-441F-BCA2-C835110F3266@HIDDEN> <83jzvksrfu.fsf@HIDDEN>
 <87C322EC-8F62-4A93-ACD8-FE5F3383FF8A@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN, zkanfer@HIDDEN,
 juri@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Mattias Engdegård <mattias.engdegard@HIDDEN>
> Date: Sat, 1 Jul 2023 10:45:35 +0200
> Cc: juri@HIDDEN,
>  64185 <at> debbugs.gnu.org,
>  me@HIDDEN,
>  zkanfer@HIDDEN
> 
> 30 juni 2023 kl. 21.03 skrev Eli Zaretskii <eliz@HIDDEN>:
> 
> > Sorry, this is too much for emacs-29.  Please either find a simpler
> > change for Emacs 29, or install on master.
> 
> Simpler in what way, exactly?

In a way that doesn't make any significant changes in
rectangle--duplicate-right, for example.

> The bulk of the change is in tests.

That's not the part which bothers me, obviously.

> It is the exact equivalent to Juri's change to duplicate-line, but that one actually had a bigger footprint; this change only affects duplicate-dwim and nothing else.

The difference is that (a) duplicate-line was a feature which was
explicitly requested by the bug report which caused its
implementation, and (b) the changes for duplicate-line were much
simpler and easier to reason about.

> If you like, I could try splitting the change into smaller parts.

I'm not sure I understand what would that accomplish.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 1 Jul 2023 08:45:44 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jul 01 04:45:44 2023
Received: from localhost ([127.0.0.1]:56548 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qFWEi-0005om-1k
	for submit <at> debbugs.gnu.org; Sat, 01 Jul 2023 04:45:44 -0400
Received: from mail-lj1-f181.google.com ([209.85.208.181]:57635)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mattias.engdegard@HIDDEN>) id 1qFWEg-0005oY-V6
 for 64185 <at> debbugs.gnu.org; Sat, 01 Jul 2023 04:45:43 -0400
Received: by mail-lj1-f181.google.com with SMTP id
 38308e7fff4ca-2b699a2fe86so44785981fa.3
 for <64185 <at> debbugs.gnu.org>; Sat, 01 Jul 2023 01:45:42 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20221208; t=1688201137; x=1690793137;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:sender:from:to:cc:subject
 :date:message-id:reply-to;
 bh=GcmJw49S8MeLySrrO9iU5iFjFDAi3FMgHmly7UxULCA=;
 b=AI1MpIcpKgxgMaUFr8rxj9a57v/OU5Y+H/F/cdC9qAk/CqXEJYcvR1ScUxJQ7YM2pQ
 VKmPZ62M8B1tPrdajrSM549k3FWXhSKoNo04Aru9kdyAnVEa5Hlfg3zr3R7Ew/1dztL1
 tz106g1Uz5VaqD9Z9KjkVMVfFaUE2R5jEEL0jEFv7bs8oGSY3vSSjbmsxqmTqxY2L7pk
 m5BuWStHCTyZbQkD2NRSObD7FbkKaKuub94t/QZt4jZsDqdJ2rbdKn4LU0iZ6nXVucyP
 Anh7StjU6m7H95FW3uIZl6Lm3b43rdc70tE0YPk4mgs9FjFAey08GiwgDpwq29bCfNHV
 1S8A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20221208; t=1688201137; x=1690793137;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:sender:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=GcmJw49S8MeLySrrO9iU5iFjFDAi3FMgHmly7UxULCA=;
 b=IYzgIvGQWoUN3KcvmHhhUaO4GnB5vv0aNHWd6wnJRb3Bhc9xOPdZQaIipTryPf5Djy
 JLXXTOa7WwNecsCbBlpc8hPANlZbh2XSZTGF4Mw6GjHOk5eIi7t2dlwH18a/cy86oPA6
 FyLgaPGMVJR6XP+qR9efhJYxm5YMnZsRBlYPCY6zoHFZWLnZFxMsMf8qUcEpXZ43oMlj
 ou4HbuNmD2+Kid5uZv8u/d4tjvCo1/cUzXb69feQjPIL4apA0yrnMx6ZVrr4PN87JUgT
 P4Ss3Cagem9ZvtV95AnmWQ3GOoIhWhUjx48m59v2+/HLrDEmhOjmOAjlhcpeG4ivhrHA
 K3Cg==
X-Gm-Message-State: ABy/qLZHF0g++Q7SaejhVN2qncEsQAruqxWl3ZmjNXtV70+Z59BXKvCu
 q7dStR4G2+dNuH6i5YY7kmg=
X-Google-Smtp-Source: APBJJlGCL7o4ruCWhVzCz5CL/tjeyVVmCBOuEQ5fq5KnSlDCMVOByGqVBq7ZwS+4OT+U7F6UrQ+CIQ==
X-Received: by 2002:a05:6512:3443:b0:4fb:89c1:c209 with SMTP id
 j3-20020a056512344300b004fb89c1c209mr3423655lfr.62.1688201136529; 
 Sat, 01 Jul 2023 01:45:36 -0700 (PDT)
Received: from smtpclient.apple (c188-150-165-235.bredband.tele2.se.
 [188.150.165.235]) by smtp.gmail.com with ESMTPSA id
 r26-20020ac25a5a000000b004fb7bbc1bf8sm2285470lfn.85.2023.07.01.01.45.35
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Sat, 01 Jul 2023 01:45:35 -0700 (PDT)
Content-Type: text/plain;
	charset=us-ascii
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.15\))
Subject: Re: bug#64185: proposal for new function: copy-line
From: =?utf-8?Q?Mattias_Engdeg=C3=A5rd?= <mattias.engdegard@HIDDEN>
In-Reply-To: <83jzvksrfu.fsf@HIDDEN>
Date: Sat, 1 Jul 2023 10:45:35 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <87C322EC-8F62-4A93-ACD8-FE5F3383FF8A@HIDDEN>
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <86o7l66rw8.fsf@HIDDEN>
 <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN>
 <86a5wnmu3x.fsf@HIDDEN>
 <62289D18-9F94-47E5-8D2B-DBDB35C2E2DB@HIDDEN>
 <86r0pyt9a9.fsf@HIDDEN>
 <AB835F7C-F245-495C-9159-44899B8821E5@HIDDEN>
 <86fs6cn42v.fsf@HIDDEN>
 <9383E91E-0F4D-4B54-B999-6A42581CFF95@HIDDEN>
 <86leg3trew.fsf@HIDDEN> <83zg4jtoud.fsf@HIDDEN>
 <86cz1ezqou.fsf@HIDDEN>
 <EC52BE73-7BC3-441F-BCA2-C835110F3266@HIDDEN> <83jzvksrfu.fsf@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
X-Mailer: Apple Mail (2.3654.120.0.1.15)
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN, zkanfer@HIDDEN,
 juri@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

30 juni 2023 kl. 21.03 skrev Eli Zaretskii <eliz@HIDDEN>:

> Sorry, this is too much for emacs-29.  Please either find a simpler
> change for Emacs 29, or install on master.

Simpler in what way, exactly? The bulk of the change is in tests.

It is the exact equivalent to Juri's change to duplicate-line, but that =
one actually had a bigger footprint; this change only affects =
duplicate-dwim and nothing else.

If you like, I could try splitting the change into smaller parts.





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 30 Jun 2023 19:03:28 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 30 15:03:27 2023
Received: from localhost ([127.0.0.1]:55794 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qFJOx-0006iZ-Iy
	for submit <at> debbugs.gnu.org; Fri, 30 Jun 2023 15:03:27 -0400
Received: from eggs.gnu.org ([209.51.188.92]:51534)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1qFJOw-0006iM-11
 for 64185 <at> debbugs.gnu.org; Fri, 30 Jun 2023 15:03:26 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qFJOq-00070g-LL; Fri, 30 Jun 2023 15:03:20 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=XHj/w1OLQHsHfH7qiU7BiU/Ve4ldxntMd8wJu2RdLEg=; b=q2uUVKoM+2MSF7j9Nc82
 sLAcVt+q+W4m9L4L0lIUSjMszQbRsvEHnF60nck9yMairhR8Fbfgwnj3sJfmLy6exhna34PX1uM9c
 g71u8oMYaNnJ0/yz2OukKjCeZtgq8PKKvTVAdgPWwNZceoETMB9bXvTt/FryhmkLIMGwuV1VmYLwA
 EMoHwIzlOHCpWOo3T2PAzu6N2PSJlpqum/rpBLPWtPh94GmVIEOXf3hkYJ0/aRHUpjT38IZcn5O8A
 M8X9wm1fUMa9dSZE9e/2EnHyk1YtqZ1rzOCv5e+8nCEAmG1H52130Csyfts/dElAxx2RzHn5dV643
 Z48bgV58eCku0w==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qFJOo-0005v2-Ad; Fri, 30 Jun 2023 15:03:19 -0400
Date: Fri, 30 Jun 2023 22:03:49 +0300
Message-Id: <83jzvksrfu.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Mattias =?utf-8?Q?Engdeg=C3=A5rd?= <mattias.engdegard@HIDDEN>
In-Reply-To: <EC52BE73-7BC3-441F-BCA2-C835110F3266@HIDDEN> (message from
 Mattias =?utf-8?Q?Engdeg=C3=A5rd?= on Fri, 30 Jun 2023 19:13:26 +0200)
Subject: Re: bug#64185: proposal for new function: copy-line
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <86o7l66rw8.fsf@HIDDEN>
 <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN>
 <86a5wnmu3x.fsf@HIDDEN>
 <62289D18-9F94-47E5-8D2B-DBDB35C2E2DB@HIDDEN>
 <86r0pyt9a9.fsf@HIDDEN>
 <AB835F7C-F245-495C-9159-44899B8821E5@HIDDEN>
 <86fs6cn42v.fsf@HIDDEN>
 <9383E91E-0F4D-4B54-B999-6A42581CFF95@HIDDEN>
 <86leg3trew.fsf@HIDDEN> <83zg4jtoud.fsf@HIDDEN>
 <86cz1ezqou.fsf@HIDDEN>
 <EC52BE73-7BC3-441F-BCA2-C835110F3266@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN, zkanfer@HIDDEN,
 juri@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Mattias Engdegård <mattias.engdegard@HIDDEN>
> Date: Fri, 30 Jun 2023 19:13:26 +0200
> Cc: Eli Zaretskii <eliz@HIDDEN>,
>  64185 <at> debbugs.gnu.org,
>  me@HIDDEN,
>  zkanfer@HIDDEN
> 
> 29 juni 2023 kl. 09.13 skrev Juri Linkov <juri@HIDDEN>:
> 
> > I don't know if this can be closed now, since a new option for
> > duplicate-dwim could be created here as well.
> 
> Indeed, and here it is. It also fixes a bug when duplicating some rectangles, which arose from changes in Emacs 29.
> 
> There is only a single variable for both contiguous and rectangular regions; maybe we should have them separate -- not sure.
> 
> Since this is intended for emacs-29, I'm posting it here for approval first.

Sorry, this is too much for emacs-29.  Please either find a simpler
change for Emacs 29, or install on master.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 30 Jun 2023 17:13:37 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 30 13:13:37 2023
Received: from localhost ([127.0.0.1]:55684 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qFHgf-0003XD-8n
	for submit <at> debbugs.gnu.org; Fri, 30 Jun 2023 13:13:37 -0400
Received: from mail-lf1-f54.google.com ([209.85.167.54]:62584)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mattias.engdegard@HIDDEN>) id 1qFHgc-0003Wy-RU
 for 64185 <at> debbugs.gnu.org; Fri, 30 Jun 2023 13:13:35 -0400
Received: by mail-lf1-f54.google.com with SMTP id
 2adb3069b0e04-4fba03becc6so1972155e87.0
 for <64185 <at> debbugs.gnu.org>; Fri, 30 Jun 2023 10:13:34 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20221208; t=1688145209; x=1690737209;
 h=references:to:cc:in-reply-to:date:subject:mime-version:message-id
 :from:sender:from:to:cc:subject:date:message-id:reply-to;
 bh=oY39kLmMdN1qLTp2yIK6E0Or74qH37Ous2+n6jiNZEU=;
 b=Y1dkmvFMi8llgKnFwdvelChEBOZ9faNrkEFT/HYAyW7PEs4xAvcaSzMnz1t2V7cZJE
 gd0A85AvVx1ilUxVNZZ79f0UcF6inUu239PDc/CygA0+DBzIIbXoU7xislW2/R4y9E/0
 p0AT5rujGxqqne149gdCg+MO+9N/+jbAKy7XymtqWVrwwtw/2IRklPc/rYnuxBfz3mhZ
 bH/rg7zaw5T7qEfO8WNVuYwHiHQMqjcHJmW3aChB4IGTU0wPed03De2CEjsLzV3olR85
 tRvvSzjCH3Fo9YAsgvmxX8Yl7dQ9Pw0Jkbw6w7MLxozsPlP8/7KMaRjyA1DpxaUfRw5Q
 lDZg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20221208; t=1688145209; x=1690737209;
 h=references:to:cc:in-reply-to:date:subject:mime-version:message-id
 :from:sender:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=oY39kLmMdN1qLTp2yIK6E0Or74qH37Ous2+n6jiNZEU=;
 b=YN7x2kuD6URXplLeu5+MSn4w33q7ZmNO/Bn7ezDcGIbQAvxp7ujc1XmMnfNyFzShyx
 kdC506YWFh/FBse/UDEimF9mgNaC2SsEydIqayFC/pdhG2X/KDdVp23SrUFQbNA2+WuL
 8uJfcjsFcn2CAs/2iP1WC2WgBrYIX4PNWWENGKtvpe3CQXAFeW0Ufk4BJf1ED7yjP1VI
 kYC4LfYcXjC0zB27pccI7wPwd7PFBgCy3jcqZM4hpDK/1h7XmkqdLZlVdMZ1g2t2OzBr
 GkyzjtLXkZCW05uK6usGWLk28OQe0jBXi90k93AnAB2fzxiZVHW2IxiN+N1heyzLsKfw
 Y5jQ==
X-Gm-Message-State: AC+VfDzdvwZdMjgfkBn2pp3vL8sQcEks1aet8G+eYOHD8/uKi4nlCjVG
 xK2wsZaj0M1oUzu3Gr6UBr0=
X-Google-Smtp-Source: ACHHUZ4+frIOG9KC1gq4Aw+RESh2Q4awzLvS5vFrZPbMc2RjZHxSFvCK4DRLO0Ip31AslR6EKFp1mQ==
X-Received: by 2002:a05:6512:1303:b0:4fb:74d8:c379 with SMTP id
 x3-20020a056512130300b004fb74d8c379mr2327890lfu.21.1688145208436; 
 Fri, 30 Jun 2023 10:13:28 -0700 (PDT)
Received: from smtpclient.apple (c188-150-165-235.bredband.tele2.se.
 [188.150.165.235]) by smtp.gmail.com with ESMTPSA id
 n10-20020a19550a000000b004fb844a03c7sm1548469lfe.186.2023.06.30.10.13.27
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Fri, 30 Jun 2023 10:13:28 -0700 (PDT)
From: =?utf-8?Q?Mattias_Engdeg=C3=A5rd?= <mattias.engdegard@HIDDEN>
Message-Id: <EC52BE73-7BC3-441F-BCA2-C835110F3266@HIDDEN>
Content-Type: multipart/mixed;
 boundary="Apple-Mail=_1259380C-F890-4C05-BC96-D7D046306F2A"
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.15\))
Subject: Re: bug#64185: proposal for new function: copy-line
Date: Fri, 30 Jun 2023 19:13:26 +0200
In-Reply-To: <86cz1ezqou.fsf@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <86o7l66rw8.fsf@HIDDEN>
 <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN>
 <86a5wnmu3x.fsf@HIDDEN>
 <62289D18-9F94-47E5-8D2B-DBDB35C2E2DB@HIDDEN>
 <86r0pyt9a9.fsf@HIDDEN>
 <AB835F7C-F245-495C-9159-44899B8821E5@HIDDEN>
 <86fs6cn42v.fsf@HIDDEN>
 <9383E91E-0F4D-4B54-B999-6A42581CFF95@HIDDEN>
 <86leg3trew.fsf@HIDDEN> <83zg4jtoud.fsf@HIDDEN>
 <86cz1ezqou.fsf@HIDDEN>
X-Mailer: Apple Mail (2.3654.120.0.1.15)
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, me@HIDDEN,
 zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)


--Apple-Mail=_1259380C-F890-4C05-BC96-D7D046306F2A
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii

29 juni 2023 kl. 09.13 skrev Juri Linkov <juri@HIDDEN>:

> I don't know if this can be closed now, since a new option for
> duplicate-dwim could be created here as well.

Indeed, and here it is. It also fixes a bug when duplicating some =
rectangles, which arose from changes in Emacs 29.

There is only a single variable for both contiguous and rectangular =
regions; maybe we should have them separate -- not sure.

Since this is intended for emacs-29, I'm posting it here for approval =
first.


--Apple-Mail=_1259380C-F890-4C05-BC96-D7D046306F2A
Content-Disposition: attachment;
	filename=0001-Add-duplicate-region-final-position-bug-64185.patch
Content-Type: application/octet-stream;
	x-unix-mode=0644;
	name="0001-Add-duplicate-region-final-position-bug-64185.patch"
Content-Transfer-Encoding: quoted-printable

=46rom=20c7051500cbfda75a2a218c323da3715cbf7263cc=20Mon=20Sep=2017=20=
00:00:00=202001=0AFrom:=20=3D?UTF-8?q?Mattias=3D20Engdeg=3DC3=3DA5rd?=3D=20=
<mattiase@HIDDEN>=0ADate:=20Fri,=2030=20Jun=202023=2018:34:10=20+0200=0A=
Subject:=20[PATCH]=20Add=20duplicate-region-final-position=20(bug#64185)=0A=
=0A*=20lisp/misc.el=20(duplicate-region-final-position):=20New=20=
defcustom.=0A(duplicate-dwim):=20Use=20it.=0A*=20lisp/rect.el=20=
(rectangle--duplicate-right):=20Add=20displacement=0Aargument.=20=20=
Adjust=20for=20changes=20in=20Emacs=2029.=0A*=20test/lisp/misc-tests.el=20=
(misc--duplicate-dwim):=0AExtend=20test.=0A---=0A=20lisp/misc.el=20=20=20=
=20=20=20=20=20=20=20=20=20|=2037=20+++++++++++++---=0A=20lisp/rect.el=20=
=20=20=20=20=20=20=20=20=20=20=20|=2025=20+++++++----=0A=20=
test/lisp/misc-tests.el=20|=2097=20=
+++++++++++++++++++++++++++--------------=0A=203=20files=20changed,=20=
112=20insertions(+),=2047=20deletions(-)=0A=0Adiff=20--git=20=
a/lisp/misc.el=20b/lisp/misc.el=0Aindex=2052df33911f7..c50eec9156e=20=
100644=0A---=20a/lisp/misc.el=0A+++=20b/lisp/misc.el=0A@@=20-100,7=20=
+100,18=20@@=20duplicate-line=0A=20=20=20=20=20=20=20(forward-line=20=
duplicate-line-final-position)=0A=20=20=20=20=20=20=20(move-to-column=20=
col))))=0A=20=0A-(declare-function=20rectangle--duplicate-right=20"rect"=20=
(n))=0A+(defcustom=20duplicate-region-final-position=200=0A+=20=20"Where=20=
the=20region=20ends=20up=20after=20duplicating=20a=20region=20with=20=
`duplicate-dwim'.=0A+When=200,=20leave=20the=20region=20in=20place.=0A=
+When=201,=20put=20the=20region=20around=20the=20first=20copy.=0A+When=20=
-1,=20put=20the=20region=20around=20the=20last=20copy."=0A+=20=20:type=20=
'(choice=20(const=20:tag=20"Leave=20region=20in=20place"=200)=0A+=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20(const=20:tag=20"Put=20region=20=
around=20first=20copy"=201)=0A+=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20(const=20:tag=20"Put=20region=20around=20last=20copy"=20-1))=0A=
+=20=20:group=20'editing=0A+=20=20:version=20"29.1")=0A+=0A=
+(declare-function=20rectangle--duplicate-right=20"rect"=20(n=20=
displacement))=0A=20=0A=20;;=20`duplicate-dwim'=20preserves=20an=20=
active=20region=20and=20changes=20the=20buffer=0A=20;;=20outside=20of=20=
it:=20disregard=20the=20region=20when=20immediately=20undoing=20the=0A@@=20=
-113,25=20+124,41=20@@=20duplicate-dwim=0A=20If=20the=20region=20is=20=
inactive,=20duplicate=20the=20current=20line=20(like=20=
`duplicate-line').=0A=20Otherwise,=20duplicate=20the=20region,=20which=20=
remains=20active=20afterwards.=0A=20If=20the=20region=20is=20=
rectangular,=20duplicate=20on=20its=20right-hand=20side.=0A=
-Interactively,=20N=20is=20the=20prefix=20numeric=20argument,=20and=20=
defaults=20to=201."=0A+Interactively,=20N=20is=20the=20prefix=20numeric=20=
argument,=20and=20defaults=20to=201.=0A+The=20variables=20=
`duplicate-line-final-position'=20and=0A=
+`duplicate-region-final-position'=20control=20the=20position=20of=20=
point=0A+and=20the=20region=20after=20the=20duplication."=0A=20=20=20=
(interactive=20"p")=0A=20=20=20(unless=20n=0A=20=20=20=20=20(setq=20n=20=
1))=0A=20=20=20(cond=0A+=20=20=20((<=3D=20n=200)=20nil)=0A=20=20=20=20;;=20=
Duplicate=20rectangle.=0A=20=20=20=20((bound-and-true-p=20=
rectangle-mark-mode)=0A-=20=20=20=20(rectangle--duplicate-right=20n)=0A+=20=
=20=20=20(rectangle--duplicate-right=20n=0A+=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20(if=20=
(<=20duplicate-region-final-position=200)=0A+=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20n=0A+=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20duplicate-region-final-position))=0A=20=
=20=20=20=20(setq=20deactivate-mark=20nil))=0A=20=0A=20=20=20=20;;=20=
Duplicate=20(contiguous)=20region.=0A=20=20=20=20((use-region-p)=0A=20=20=
=20=20=20(let*=20((beg=20(region-beginning))=0A=20=20=20=20=20=20=20=20=20=
=20=20=20(end=20(region-end))=0A-=20=20=20=20=20=20=20=20=20=20=20(text=20=
(buffer-substring=20beg=20end)))=0A+=20=20=20=20=20=20=20=20=20=20=20=
(text=20(buffer-substring=20beg=20end))=0A+=20=20=20=20=20=20=20=20=20=20=
=20(pt=20(point))=0A+=20=20=20=20=20=20=20=20=20=20=20(mk=20(mark)))=0A=20=
=20=20=20=20=20=20(save-excursion=0A=20=20=20=20=20=20=20=20=20=
(goto-char=20end)=0A=20=20=20=20=20=20=20=20=20(dotimes=20(_=20n)=0A-=20=20=
=20=20=20=20=20=20=20=20(insert=20text))))=0A+=20=20=20=20=20=20=20=20=20=
=20(insert=20text)))=0A+=20=20=20=20=20=20(let*=20((displace=20(if=20(<=20=
duplicate-region-final-position=200)=0A+=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20n=0A+=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
duplicate-region-final-position))=0A+=20=20=20=20=20=20=20=20=20=20=20=20=
=20(d=20(*=20displace=20(-=20end=20beg))))=0A+=20=20=20=20=20=20=20=20=
(unless=20(zerop=20d)=0A+=20=20=20=20=20=20=20=20=20=20(push-mark=20(+=20=
mk=20d))=0A+=20=20=20=20=20=20=20=20=20=20(goto-char=20(+=20pt=20d)))))=0A=
=20=20=20=20=20(setq=20deactivate-mark=20nil))=0A=20=0A=20=20=20=20;;=20=
Duplicate=20line.=0Adiff=20--git=20a/lisp/rect.el=20b/lisp/rect.el=0A=
index=205ff821abb3f..8dc188b1de0=20100644=0A---=20a/lisp/rect.el=0A+++=20=
b/lisp/rect.el=0A@@=20-930,8=20+930,9=20@@=20=
rectangle--unhighlight-for-redisplay=0A=20=20=20=20=20(mapc=20=
#'delete-overlay=20(nthcdr=205=20rol))=0A=20=20=20=20=20(setcar=20(cdr=20=
rol)=20nil)))=0A=20=0A-(defun=20rectangle--duplicate-right=20(n)=0A-=20=20=
"Duplicate=20the=20rectangular=20region=20N=20times=20on=20the=20=
right-hand=20side."=0A+(defun=20rectangle--duplicate-right=20(n=20=
displacement)=0A+=20=20"Duplicate=20the=20rectangular=20region=20N=20=
times=20on=20the=20right-hand=20side.=0A+Leave=20the=20region=20moved=20=
DISPLACEMENT=20region-wide=20steps=20to=20the=20right."=0A=20=20=20(let=20=
((cols=20(rectangle--pos-cols=20(point)=20(mark))))=0A=20=20=20=20=20=
(apply-on-rectangle=0A=20=20=20=20=20=20(lambda=20(startcol=20endcol)=0A=
@@=20-940,16=20+941,22=20@@=20rectangle--duplicate-right=0A=20=20=20=20=20=
=20=20=20=20=20(move-to-column=20endcol=20t)=0A=20=20=20=20=20=20=20=20=20=
=20(dotimes=20(_=20n)=0A=20=20=20=20=20=20=20=20=20=20=20=20(insert=20=
(cadr=20lines)))))=0A-=20=20=20=20=20(region-beginning)=20(region-end))=0A=
-=20=20=20=20;;=20Recompute=20the=20rectangle=20state;=20no=20crutches=20=
should=20be=20needed=20now.=0A-=20=20=20=20(let=20((p=20(point))=0A-=20=20=
=20=20=20=20=20=20=20=20(m=20(mark)))=0A+=20=20=20=20=20(min=20(point)=20=
(mark))=0A+=20=20=20=20=20(max=20(point)=20(mark)))=0A+=20=20=20=20;;=20=
Recompute=20the=20rectangle=20state.=0A+=20=20=20=20(let*=20((p=20=
(point))=0A+=20=20=20=20=20=20=20=20=20=20=20(m=20(mark))=0A+=20=20=20=20=
=20=20=20=20=20=20=20(point-col=20(car=20cols))=0A+=20=20=20=20=20=20=20=20=
=20=20=20(mark-col=20(cdr=20cols))=0A+=20=20=20=20=20=20=20=20=20=20=20=
(d=20(*=20displacement=20(abs=20(-=20point-col=20mark-col)))))=0A=20=20=20=
=20=20=20=20(rectangle--reset-crutches)=0A=20=20=20=20=20=20=20=
(goto-char=20m)=0A-=20=20=20=20=20=20(move-to-column=20(cdr=20cols)=20t)=0A=
-=20=20=20=20=20=20(set-mark=20(point))=0A+=20=20=20=20=20=20=
(move-to-column=20(+=20mark-col=20d)=20t)=0A+=20=20=20=20=20=20(if=20(=3D=20=
d=200)=0A+=20=20=20=20=20=20=20=20=20=20(set-mark=20(point))=0A+=20=20=20=
=20=20=20=20=20(push-mark=20(point)))=0A=20=20=20=20=20=20=20(goto-char=20=
p)=0A-=20=20=20=20=20=20(move-to-column=20(car=20cols)=20t))))=0A+=20=20=20=
=20=20=20(move-to-column=20(+=20point-col=20d)=20t))))=0A=20=0A=20=
(provide=20'rect)=0A=20=0Adiff=20--git=20a/test/lisp/misc-tests.el=20=
b/test/lisp/misc-tests.el=0Aindex=20ea27ea1653b..b9bafe4bd11=20100644=0A=
---=20a/test/lisp/misc-tests.el=0A+++=20b/test/lisp/misc-tests.el=0A@@=20=
-24,6=20+24,7=20@@=0A=20;;;=20Code:=0A=20=0A=20(require=20'ert)=0A=
+(require=20'misc)=0A=20=0A=20(defmacro=20with-misc-test=20(original=20=
result=20&rest=20body)=0A=20=20=20(declare=20(indent=202))=0A@@=20=
-113,40=20+114,70=20@@=20misc--duplicate-line=0A=20(require=20'rect)=0A=20=
=0A=20(ert-deftest=20misc--duplicate-dwim=20()=0A-=20=20;;=20Duplicate=20=
a=20line.=0A-=20=20(with-temp-buffer=0A-=20=20=20=20(insert=20=
"abc\ndefg\nh\n")=0A-=20=20=20=20(goto-char=207)=0A-=20=20=20=20=
(duplicate-dwim=202)=0A-=20=20=20=20(should=20(equal=20(buffer-string)=20=
"abc\ndefg\ndefg\ndefg\nh\n"))=0A-=20=20=20=20(should=20(equal=20(point)=20=
7)))=0A+=20=20(let=20((duplicate-line-final-position=200)=0A+=20=20=20=20=
=20=20=20=20(duplicate-region-final-position=200))=0A+=20=20=20=20;;=20=
Duplicate=20a=20line.=0A+=20=20=20=20(dolist=20(final-pos=20'(0=20-1=20=
1))=0A+=20=20=20=20=20=20(ert-info=20((prin1-to-string=20final-pos)=20=
:prefix=20"final-pos:=20")=0A+=20=20=20=20=20=20=20=20(with-temp-buffer=0A=
+=20=20=20=20=20=20=20=20=20=20(insert=20"abc\ndefg\nh\n")=0A+=20=20=20=20=
=20=20=20=20=20=20(goto-char=207)=0A+=20=20=20=20=20=20=20=20=20=20(let=20=
((duplicate-line-final-position=20final-pos))=0A+=20=20=20=20=20=20=20=20=
=20=20=20=20(duplicate-dwim=203))=0A+=20=20=20=20=20=20=20=20=20=20=
(should=20(equal=20(buffer-string)=20=
"abc\ndefg\ndefg\ndefg\ndefg\nh\n"))=0A+=20=20=20=20=20=20=20=20=20=20=
(let=20((delta=20(*=205=20(if=20(<=20final-pos=200)=203=20final-pos))))=0A=
+=20=20=20=20=20=20=20=20=20=20=20=20(should=20(equal=20(point)=20(+=207=20=
delta)))))))=0A+=0A+=20=20=20=20;;=20Duplicate=20a=20region.=0A+=20=20=20=
=20(dolist=20(final-pos=20'(0=20-1=201))=0A+=20=20=20=20=20=20(ert-info=20=
((prin1-to-string=20final-pos)=20:prefix=20"final-pos:=20")=0A+=20=20=20=20=
=20=20=20=20(with-temp-buffer=0A+=20=20=20=20=20=20=20=20=20=20(insert=20=
"abCDEFghi")=0A+=20=20=20=20=20=20=20=20=20=20(set-mark=203)=0A+=20=20=20=
=20=20=20=20=20=20=20(goto-char=207)=0A+=20=20=20=20=20=20=20=20=20=20=
(transient-mark-mode)=0A+=20=20=20=20=20=20=20=20=20=20(should=20=
(use-region-p))=0A+=20=20=20=20=20=20=20=20=20=20(let=20=
((duplicate-region-final-position=20final-pos))=0A+=20=20=20=20=20=20=20=20=
=20=20=20=20(duplicate-dwim=203))=0A+=20=20=20=20=20=20=20=20=20=20=
(should=20(equal=20(buffer-string)=20"abCDEFCDEFCDEFCDEFghi"))=0A+=20=20=20=
=20=20=20=20=20=20=20(should=20(region-active-p))=0A+=20=20=20=20=20=20=20=
=20=20=20(let=20((delta=20(*=204=20(if=20(<=20final-pos=200)=203=20=
final-pos))))=0A+=20=20=20=20=20=20=20=20=20=20=20=20(should=20(equal=20=
(point)=20(+=207=20delta)))=0A+=20=20=20=20=20=20=20=20=20=20=20=20=
(should=20(equal=20(mark)=20(+=203=20delta)))))))=0A+=0A+=20=20=20=20;;=20=
Duplicate=20a=20rectangular=20region=20(sparse).=0A+=20=20=20=20=
(with-temp-buffer=0A+=20=20=20=20=20=20(insert=20=
"x\n>a\n>bcde\n>fg\nyz\n")=0A+=20=20=20=20=20=20(goto-char=204)=0A+=20=20=
=20=20=20=20(rectangle-mark-mode)=0A+=20=20=20=20=20=20(goto-char=2015)=0A=
+=20=20=20=20=20=20(rectangle-forward-char=201)=0A+=20=20=20=20=20=20=
(duplicate-dwim)=0A+=20=20=20=20=20=20(should=20(equal=20(buffer-string)=20=
"x\n>a=20=20a=20=20\n>bcdbcde\n>fg=20fg=20\nyz\n"))=0A+=20=20=20=20=20=20=
(should=20(equal=20(point)=2024))=0A+=20=20=20=20=20=20(should=20=
(region-active-p))=0A+=20=20=20=20=20=20(should=20rectangle-mark-mode)=0A=
+=20=20=20=20=20=20(should=20(equal=20(mark)=204)))=0A+=0A+=20=20=20=20=
;;=20Idem=20(dense).=0A+=20=20=20=20(dolist=20(final-pos=20'(0=20-1=20=
1))=0A+=20=20=20=20=20=20(ert-info=20((prin1-to-string=20final-pos)=20=
:prefix=20"final-pos:=20")=0A+=20=20=20=20=20=20=20=20(with-temp-buffer=0A=
+=20=20=20=20=20=20=20=20=20=20(insert=20"aBCd\neFGh\niJKl\n")=0A+=20=20=20=
=20=20=20=20=20=20=20(goto-char=202)=0A+=20=20=20=20=20=20=20=20=20=20=
(rectangle-mark-mode)=0A+=20=20=20=20=20=20=20=20=20=20(goto-char=2014)=0A=
+=20=20=20=20=20=20=20=20=20=20(let=20((duplicate-region-final-position=20=
final-pos))=0A+=20=20=20=20=20=20=20=20=20=20=20=20(duplicate-dwim=203))=0A=
+=20=20=20=20=20=20=20=20=20=20(should=20(equal=20(buffer-string)=0A+=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
"aBCBCBCBCd\neFGFGFGFGh\niJKJKJKJKl\n"))=0A+=20=20=20=20=20=20=20=20=20=20=
(should=20(region-active-p))=0A+=20=20=20=20=20=20=20=20=20=20(should=20=
rectangle-mark-mode)=0A+=20=20=20=20=20=20=20=20=20=20(let=20((hdelta=20=
(*=202=20(if=20(<=20final-pos=200)=203=20final-pos)))=0A+=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20(vdelta=2012))=0A+=20=20=20=20=20=20=20=20=20=
=20=20=20(should=20(equal=20(point)=20(+=2014=20vdelta=20hdelta)))=0A+=20=
=20=20=20=20=20=20=20=20=20=20=20(should=20(equal=20(mark)=20(+=202=20=
hdelta)))))))))=0A=20=0A-=20=20;;=20Duplicate=20a=20region.=0A-=20=20=
(with-temp-buffer=0A-=20=20=20=20(insert=20"abc\ndef\n")=0A-=20=20=20=20=
(set-mark=202)=0A-=20=20=20=20(goto-char=207)=0A-=20=20=20=20=
(transient-mark-mode)=0A-=20=20=20=20(should=20(use-region-p))=0A-=20=20=20=
=20(duplicate-dwim)=0A-=20=20=20=20(should=20(equal=20(buffer-string)=20=
"abc\ndebc\ndef\n"))=0A-=20=20=20=20(should=20(equal=20(point)=207))=0A-=20=
=20=20=20(should=20(region-active-p))=0A-=20=20=20=20(should=20(equal=20=
(mark)=202)))=0A-=0A-=20=20;;=20Duplicate=20a=20rectangular=20region.=0A=
-=20=20(with-temp-buffer=0A-=20=20=20=20(insert=20=
"x\n>a\n>bcde\n>fg\nyz\n")=0A-=20=20=20=20(goto-char=204)=0A-=20=20=20=20=
(rectangle-mark-mode)=0A-=20=20=20=20(goto-char=2015)=0A-=20=20=20=20=
(rectangle-forward-char=201)=0A-=20=20=20=20(duplicate-dwim)=0A-=20=20=20=
=20(should=20(equal=20(buffer-string)=20"x\n>a=20=20a=20=20=
\n>bcdbcde\n>fg=20fg=20\nyz\n"))=0A-=20=20=20=20(should=20(equal=20=
(point)=2024))=0A-=20=20=20=20(should=20(region-active-p))=0A-=20=20=20=20=
(should=20rectangle-mark-mode)=0A-=20=20=20=20(should=20(equal=20(mark)=20=
4))))=0A=20=0A=20(provide=20'misc-tests)=0A=20;;;=20misc-tests.el=20ends=20=
here=0A--=20=0A2.32.0=20(Apple=20Git-132)=0A=0A=

--Apple-Mail=_1259380C-F890-4C05-BC96-D7D046306F2A--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 29 Jun 2023 07:18:29 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 29 03:18:29 2023
Received: from localhost ([127.0.0.1]:52149 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qElvB-0006oP-8U
	for submit <at> debbugs.gnu.org; Thu, 29 Jun 2023 03:18:29 -0400
Received: from relay9-d.mail.gandi.net ([217.70.183.199]:43817)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1qElv8-0006oA-KD
 for 64185 <at> debbugs.gnu.org; Thu, 29 Jun 2023 03:18:28 -0400
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
Received: by mail.gandi.net (Postfix) with ESMTPSA id 7BEE7FF802;
 Thu, 29 Jun 2023 07:18:18 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#64185: proposal for new function: copy-line
In-Reply-To: <83zg4jtoud.fsf@HIDDEN> (Eli Zaretskii's message of "Wed, 28 Jun
 2023 21:37:46 +0300")
Organization: LINKOV.NET
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <86o7l66rw8.fsf@HIDDEN>
 <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN>
 <86a5wnmu3x.fsf@HIDDEN>
 <62289D18-9F94-47E5-8D2B-DBDB35C2E2DB@HIDDEN>
 <86r0pyt9a9.fsf@HIDDEN>
 <AB835F7C-F245-495C-9159-44899B8821E5@HIDDEN>
 <86fs6cn42v.fsf@HIDDEN>
 <9383E91E-0F4D-4B54-B999-6A42581CFF95@HIDDEN>
 <86leg3trew.fsf@HIDDEN> <83zg4jtoud.fsf@HIDDEN>
Date: Thu, 29 Jun 2023 10:13:37 +0300
Message-ID: <86cz1ezqou.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, mattias.engdegard@HIDDEN, me@HIDDEN,
 zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

>> > We can certainly do better.  I just pushed another 10× improvement, on
>> > top of the previous performance doubling for duplicate-line.
>>
>> Thanks, this is a nice improvement.  Too bad you did this on master.
>> This means I can't push the patch that Eli approved to emacs-29 anymore,
>> because whoever will merge emacs-29 to master next time will be forced
>> to resolve the merge conflict, and this is not a trivial task.
>
> You can install on emacs-29 with a commit log message which says
> "don't merge to master".  Then Someoneâ„¢ will have to do the equivalent
> fix on master.

This means more work.  Ok, done.

I don't know if this can be closed now, since a new option for
duplicate-dwim could be created here as well.

Then e.g. duplicate-dwim-final-position could inherit its default value
from duplicate-line-final-position.  And here more general values 0, 1, -1
become an advantage since inherited symbol values such as 'last-new-line'
would not make sense for the region part of duplicate-dwim.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 28 Jun 2023 18:37:33 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jun 28 14:37:32 2023
Received: from localhost ([127.0.0.1]:51662 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qEa2m-00047R-K9
	for submit <at> debbugs.gnu.org; Wed, 28 Jun 2023 14:37:32 -0400
Received: from eggs.gnu.org ([209.51.188.92]:54002)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1qEa2k-00047E-TW
 for 64185 <at> debbugs.gnu.org; Wed, 28 Jun 2023 14:37:31 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qEa2f-00019m-6f; Wed, 28 Jun 2023 14:37:25 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=YIPJeLTIy1dD6BgH5N80kXxP4TSzUT5/qOl1DsqqgiU=; b=H8B/4n3qdrFhs9ZM2JMj
 RN+bFBI6KHBpF5fDTn3+sUhWINxDZj5/wiVSB71FQfL+7dxN1L1VyNZkIE3OvGRywCcEtpB9hk/5R
 d1b0VAO/4jpGxWFZtIMzyO0OB8EJCvxjuB7/XGoNj9iarNt85LzIK5GC3sKJVJi4+HMlHJlc+INlQ
 +UeE+JKAUfsIotDHc4osIqJkDOLKQCbxveRiPIRNzDyj78MhhrjJnrWeO5uisTVH65120WOGlnbii
 9ydOIziSy+u1PD8novRZY3OFC62Kf+A3eEVZ56DpbnqDk2J8htau35sa5wujBN9y9wrM0pHtzRsDa
 DClkwujFyYNRJQ==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qEa2b-00049G-DF; Wed, 28 Jun 2023 14:37:22 -0400
Date: Wed, 28 Jun 2023 21:37:46 +0300
Message-Id: <83zg4jtoud.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
In-Reply-To: <86leg3trew.fsf@HIDDEN> (message from Juri Linkov on
 Wed, 28 Jun 2023 20:42:10 +0300)
Subject: Re: bug#64185: proposal for new function: copy-line
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <86o7l66rw8.fsf@HIDDEN>
 <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN>
 <86a5wnmu3x.fsf@HIDDEN>
 <62289D18-9F94-47E5-8D2B-DBDB35C2E2DB@HIDDEN>
 <86r0pyt9a9.fsf@HIDDEN>
 <AB835F7C-F245-495C-9159-44899B8821E5@HIDDEN>
 <86fs6cn42v.fsf@HIDDEN>
 <9383E91E-0F4D-4B54-B999-6A42581CFF95@HIDDEN>
 <86leg3trew.fsf@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, mattias.engdegard@HIDDEN, me@HIDDEN,
 zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Juri Linkov <juri@HIDDEN>
> Cc: Eli Zaretskii <eliz@HIDDEN>,  64185 <at> debbugs.gnu.org,
>   me@HIDDEN,  zkanfer@HIDDEN
> Date: Wed, 28 Jun 2023 20:42:10 +0300
> 
> > We can certainly do better.  I just pushed another 10× improvement, on
> > top of the previous performance doubling for duplicate-line.
> 
> Thanks, this is a nice improvement.  Too bad you did this on master.
> This means I can't push the patch that Eli approved to emacs-29 anymore,
> because whoever will merge emacs-29 to master next time will be forced
> to resolve the merge conflict, and this is not a trivial task.

You can install on emacs-29 with a commit log message which says
"don't merge to master".  Then Someoneâ„¢ will have to do the equivalent
fix on master.





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 28 Jun 2023 17:43:41 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jun 28 13:43:41 2023
Received: from localhost ([127.0.0.1]:51556 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qEZCf-0008WK-74
	for submit <at> debbugs.gnu.org; Wed, 28 Jun 2023 13:43:41 -0400
Received: from relay7-d.mail.gandi.net ([217.70.183.200]:41085)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1qEZCc-0008W4-RR
 for 64185 <at> debbugs.gnu.org; Wed, 28 Jun 2023 13:43:39 -0400
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
Received: by mail.gandi.net (Postfix) with ESMTPSA id 15F612000A;
 Wed, 28 Jun 2023 17:43:30 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Mattias =?iso-8859-1?Q?Engdeg=E5rd?= <mattias.engdegard@HIDDEN>
Subject: Re: bug#64185: proposal for new function: copy-line
In-Reply-To: <9383E91E-0F4D-4B54-B999-6A42581CFF95@HIDDEN> ("Mattias
 =?iso-8859-1?Q?Engdeg=E5rd=22's?= message of "Wed, 28 Jun 2023 15:17:08
 +0200")
Organization: LINKOV.NET
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <86o7l66rw8.fsf@HIDDEN>
 <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN>
 <86a5wnmu3x.fsf@HIDDEN>
 <62289D18-9F94-47E5-8D2B-DBDB35C2E2DB@HIDDEN>
 <86r0pyt9a9.fsf@HIDDEN>
 <AB835F7C-F245-495C-9159-44899B8821E5@HIDDEN>
 <86fs6cn42v.fsf@HIDDEN>
 <9383E91E-0F4D-4B54-B999-6A42581CFF95@HIDDEN>
Date: Wed, 28 Jun 2023 20:42:10 +0300
Message-ID: <86leg3trew.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, me@HIDDEN,
 zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

>> (The only consideration is performance, but probably not worth
>> making the code more complex by increasing the size of copied region
>> exponentially to avoid inserting a large amount of small chunks one by one.)
>
> We can certainly do better.  I just pushed another 10× improvement, on
> top of the previous performance doubling for duplicate-line.

Thanks, this is a nice improvement.  Too bad you did this on master.
This means I can't push the patch that Eli approved to emacs-29 anymore,
because whoever will merge emacs-29 to master next time will be forced
to resolve the merge conflict, and this is not a trivial task.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 28 Jun 2023 13:17:23 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jun 28 09:17:23 2023
Received: from localhost ([127.0.0.1]:50285 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qEV2w-0006lT-4c
	for submit <at> debbugs.gnu.org; Wed, 28 Jun 2023 09:17:23 -0400
Received: from mail-lf1-f45.google.com ([209.85.167.45]:46350)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mattias.engdegard@HIDDEN>) id 1qEV2q-0006lB-LA
 for 64185 <at> debbugs.gnu.org; Wed, 28 Jun 2023 09:17:20 -0400
Received: by mail-lf1-f45.google.com with SMTP id
 2adb3069b0e04-4fb94b1423eso719461e87.1
 for <64185 <at> debbugs.gnu.org>; Wed, 28 Jun 2023 06:17:16 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20221208; t=1687958230; x=1690550230;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:sender:from:to:cc:subject
 :date:message-id:reply-to;
 bh=QzRHVWwxaEO5Z5iG1MJdJLakJxSkYohpyA2RjBjpkW4=;
 b=ZCPkYhUmm3zsrAjsOgKKEawz1RFb/YwfeoR9lUsNO1Jb2kLSvfQfo+wSarJA9LXU3Q
 CO0mPy4KnglRtcOVr73mOg+KFLuH05widjJFtooaSa/fIytZoBQeDvbpOPWQ5pbO8XTL
 a5xblXgywP4UtiZBiQIb0Q5hws+RsvqDAev/lAjyi3F7qn1Q4jzItmFzAa3nYvS1GFvl
 v//q+QvTo5uAiz039F+nyN7XfwFQGQ7zk9jE1jEvdzF6jQWQV/gy5WF6m3qVIo1fQ8fF
 gYk+1R4o9MZGhtpzE0y2H0fYfPp8OtKFSUeYkL+llO0mndPIlUeEGh1jFtS/XOirPy5d
 cQOA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20221208; t=1687958230; x=1690550230;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:sender:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=QzRHVWwxaEO5Z5iG1MJdJLakJxSkYohpyA2RjBjpkW4=;
 b=BxaZN6zfNIN3AZqKFZwxXuwPugBk0mxpSFSzf/mQIMN6N4Tt4GrfXEdugN9g0nffPw
 g48pZaLcLQFfTTGGTbXPiMdWXpEHgV65XQ3swZQliIblRC1UuELZQSbA+VdYxtR3RuiU
 03m9eVbmbxd+Mq5v9w0pnmgQJPImdrK+ZUmMZ/7IUTk+IJzmrJmC+KY9jW/aQYE91gCp
 r1xQiPKI3rXFhJW9MqCckekt1nc1V5L1LdtE2NNZogs4FQZscYDI8rPbdaP7/QF2l5EP
 G+OSbIljWXyxYAqKFsdUW/wPxoxNVJhUDZ6Du+9BQG15Ls5t1tRd4qnn2Q0n/miNqsCk
 K2Rw==
X-Gm-Message-State: AC+VfDzvmZf5TSXryK5Is8Nia899geTlCVATG7lHJhOxgt7CS/3ZGPF0
 7Vcan8GPfu31p2fY8s79y58=
X-Google-Smtp-Source: ACHHUZ6TooJ0MeiA2pZC/zYx6zHhZ0lHvj9qt32aqSdhH5lhgQTGW54yPDyl5YxeKvAkYIptLglCbw==
X-Received: by 2002:a19:7705:0:b0:4f9:56aa:26c5 with SMTP id
 s5-20020a197705000000b004f956aa26c5mr13001617lfc.25.1687958230019; 
 Wed, 28 Jun 2023 06:17:10 -0700 (PDT)
Received: from smtpclient.apple (c188-150-165-235.bredband.tele2.se.
 [188.150.165.235]) by smtp.gmail.com with ESMTPSA id
 d24-20020ac24c98000000b004fb8cb97ae3sm390432lfl.74.2023.06.28.06.17.08
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Wed, 28 Jun 2023 06:17:09 -0700 (PDT)
Content-Type: text/plain;
	charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.15\))
Subject: Re: bug#64185: proposal for new function: copy-line
From: =?utf-8?Q?Mattias_Engdeg=C3=A5rd?= <mattias.engdegard@HIDDEN>
In-Reply-To: <86fs6cn42v.fsf@HIDDEN>
Date: Wed, 28 Jun 2023 15:17:08 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <9383E91E-0F4D-4B54-B999-6A42581CFF95@HIDDEN>
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <86o7l66rw8.fsf@HIDDEN>
 <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN>
 <86a5wnmu3x.fsf@HIDDEN>
 <62289D18-9F94-47E5-8D2B-DBDB35C2E2DB@HIDDEN>
 <86r0pyt9a9.fsf@HIDDEN>
 <AB835F7C-F245-495C-9159-44899B8821E5@HIDDEN>
 <86fs6cn42v.fsf@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
X-Mailer: Apple Mail (2.3654.120.0.1.15)
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, me@HIDDEN,
 zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

27 juni 2023 kl. 20.28 skrev Juri Linkov <juri@HIDDEN>:

> (The only consideration is performance, but probably not worth
> making the code more complex by increasing the size of copied region
> exponentially to avoid inserting a large amount of small chunks one by =
one.)

We can certainly do better. I just pushed another 10=C3=97 improvement, =
on top of the previous performance doubling for duplicate-line.

> I see no problem in having two commands, since most users expect a =
standard
> command to duplicate lines, and a more general dwim command is a bonus
> for more advanced uses.  So AFAIC, a separate option for =
duplicate-line
> is a must, and an option for duplicate-dwim is a nice-to-have.

That duplicate-dwim is somehow 'advanced' is a misconception: it's just =
more useful, and definitely not harder to use.
I don't believe in hiding useful functionality from people by =
intentionally making them difficult to access.





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 27 Jun 2023 18:41:54 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jun 27 14:41:54 2023
Received: from localhost ([127.0.0.1]:49525 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qEDdR-0008PU-TY
	for submit <at> debbugs.gnu.org; Tue, 27 Jun 2023 14:41:54 -0400
Received: from relay8-d.mail.gandi.net ([217.70.183.201]:50247)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1qEDdN-0008PD-EM
 for 64185 <at> debbugs.gnu.org; Tue, 27 Jun 2023 14:41:52 -0400
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
Received: by mail.gandi.net (Postfix) with ESMTPSA id A8CA21BF205;
 Tue, 27 Jun 2023 18:41:41 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Mattias =?iso-8859-1?Q?Engdeg=E5rd?= <mattias.engdegard@HIDDEN>
Subject: Re: bug#64185: proposal for new function: copy-line
In-Reply-To: <AB835F7C-F245-495C-9159-44899B8821E5@HIDDEN> ("Mattias
 =?iso-8859-1?Q?Engdeg=E5rd=22's?= message of "Tue, 27 Jun 2023 17:35:43
 +0200")
Organization: LINKOV.NET
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <86o7l66rw8.fsf@HIDDEN>
 <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN>
 <86a5wnmu3x.fsf@HIDDEN>
 <62289D18-9F94-47E5-8D2B-DBDB35C2E2DB@HIDDEN>
 <86r0pyt9a9.fsf@HIDDEN>
 <AB835F7C-F245-495C-9159-44899B8821E5@HIDDEN>
Date: Tue, 27 Jun 2023 21:28:10 +0300
Message-ID: <86fs6cn42v.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, me@HIDDEN,
 zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

>> I remember already the need of doing this several times: to create
>> initial content for testing first I select one line then duplicate
>> its region, then select the whole buffer and duplicate it again
>> and so on, so the duplicated region grows exponentially.
>
> Yes, but there is no reason to do that now.  Just use duplicate-dwim
> (or duplicate-line).  Both benefit a lot from immediate repeatability.

I agree it's much easier to do this with the new commands now.
(The only consideration is performance, but probably not worth
making the code more complex by increasing the size of copied region
exponentially to avoid inserting a large amount of small chunks one by one.)

> I don't like the 'dwim' name part either but it has some precedence.
> A single function should suffice but since this is Emacs, we have two
> of them for historical reasons before anything is even released.

I see no problem in having two commands, since most users expect a standard
command to duplicate lines, and a more general dwim command is a bonus
for more advanced uses.  So AFAIC, a separate option for duplicate-line
is a must, and an option for duplicate-dwim is a nice-to-have.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 27 Jun 2023 15:35:56 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jun 27 11:35:56 2023
Received: from localhost ([127.0.0.1]:49396 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qEAjU-0003cK-3j
	for submit <at> debbugs.gnu.org; Tue, 27 Jun 2023 11:35:56 -0400
Received: from mail-lf1-f50.google.com ([209.85.167.50]:50269)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mattias.engdegard@HIDDEN>) id 1qEAjP-0003c6-Sg
 for 64185 <at> debbugs.gnu.org; Tue, 27 Jun 2023 11:35:54 -0400
Received: by mail-lf1-f50.google.com with SMTP id
 2adb3069b0e04-4fb7b2e3dacso2975246e87.0
 for <64185 <at> debbugs.gnu.org>; Tue, 27 Jun 2023 08:35:51 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20221208; t=1687880146; x=1690472146;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:sender:from:to:cc:subject
 :date:message-id:reply-to;
 bh=72PrdhGPQorVvhXEgxeFNE53EcEgGp7s3VyDhxB870c=;
 b=GmcIp4zLorkQ68A6tgHI6yKoJ5ikz3Dt4MOMIlwXB5+H3xQ1xOp9mjdpkdi+RlxKvA
 GaXVRp9aBLmfORM3kDD2dR0HJGHSoclfpsaL3krIX4BrBIwZAwb3UjQQePbaSzV819Z3
 kImbtMX2IviD8leN0S01JgGgL0/mgyNVJYtOjgf+ah8o1l2GLxlwDOzGp4vCEHeL0GUy
 cHKVyS5jQJjozD0dXKskUPeTcZAHXDIkRlZ42sxplnFTnKxNqruJmqSFsVUTgdksxTHR
 OzfQC19QCH51aUB/JYXAapFSF7bM0n+K+Sepw6kdtZUmszF3uQ2atofE7scbBxpW6Kza
 xfcQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20221208; t=1687880146; x=1690472146;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:sender:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=72PrdhGPQorVvhXEgxeFNE53EcEgGp7s3VyDhxB870c=;
 b=FWEg4BcMngZVTn+C3f26Kf2Hyt13exedzHjqF54M9D+NhT3gM8ifydMS4NfwQ2nMKv
 4SWh5ucCpk1wrNAC+JoN2Qw6mfiUrrw6wz/iEVRCIFSSQtcfuPZE1vzOMpnSqB7oQ4/G
 1Ll8F6NKBo6Xh7+8xuKodEOQEN988dnC8lR/R3ET+Q8jG+SHCPRa1Rt4wadOmXNnZBkE
 qjaHrguwaaPCwrZrKVGTJBBb63xD8BW89059k7VCTrFQCi4uVbEG+tlNDToocHxbrsmP
 q7izn8Aag5+i9D/4Xvy520WKxtgQmDUzbsNHj6CEYnSld4DuNtZMI4qwf+xaNXnLSZYw
 P7MQ==
X-Gm-Message-State: AC+VfDxYdg5H+5q8OuwvREV7RkrWLh4Hj4/hO99oNGn2t+p8bZVwcmNw
 eadd//Du5HTwq5M5d7eHISE=
X-Google-Smtp-Source: ACHHUZ5lcp8wO5MYErX8LLnRkiHAUGTIR1hX+uDUyo0rf6g/Q0f7fzSNou4zu5JmhLxyK7K9LlRd1A==
X-Received: by 2002:a05:6512:31cf:b0:4fb:82d8:994d with SMTP id
 j15-20020a05651231cf00b004fb82d8994dmr1940348lfe.42.1687880145445; 
 Tue, 27 Jun 2023 08:35:45 -0700 (PDT)
Received: from smtpclient.apple (c188-150-165-235.bredband.tele2.se.
 [188.150.165.235]) by smtp.gmail.com with ESMTPSA id
 v27-20020ac2561b000000b004f8596a31dcsm1168204lfd.209.2023.06.27.08.35.44
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Tue, 27 Jun 2023 08:35:44 -0700 (PDT)
Content-Type: text/plain;
	charset=us-ascii
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.15\))
Subject: Re: bug#64185: proposal for new function: copy-line
From: =?utf-8?Q?Mattias_Engdeg=C3=A5rd?= <mattias.engdegard@HIDDEN>
In-Reply-To: <86r0pyt9a9.fsf@HIDDEN>
Date: Tue, 27 Jun 2023 17:35:43 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <AB835F7C-F245-495C-9159-44899B8821E5@HIDDEN>
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <86o7l66rw8.fsf@HIDDEN>
 <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN>
 <86a5wnmu3x.fsf@HIDDEN>
 <62289D18-9F94-47E5-8D2B-DBDB35C2E2DB@HIDDEN>
 <86r0pyt9a9.fsf@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
X-Mailer: Apple Mail (2.3654.120.0.1.15)
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, me@HIDDEN,
 zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

26 juni 2023 kl. 19.37 skrev Juri Linkov <juri@HIDDEN>:

> I remember already the need of doing this several times: to create
> initial content for testing first I select one line then duplicate
> its region, then select the whole buffer and duplicate it again
> and so on, so the duplicated region grows exponentially.

Yes, but there is no reason to do that now. Just use duplicate-dwim (or =
duplicate-line).
Both benefit a lot from immediate repeatability.

> `duplicate-dwim-final-column` should be applied to both cases?
> To rectangular regions and to lines?  In case of lines it could
> define whether to keep the original column, or move to the
> beginning of the line, or to the end of the line?

No, I meant the same as you were proposing for lines: whether to insert =
copies before or after the original (or where point and the region =
should be afterwards, but that's pretty much the same thing as long as =
we preserve window-start, as you correctly pointed out).

> Then I think `duplicate-dwim` is a misnomer, and it was misdesigned.
> A proper name that matches the design of `thing-at-point`, would be
> `duplicate-thing`.  thingatpt.el contains the definition of the region
> among many other things that are candidates for duplication.

That is a very different operation. `duplicate-dwim` acts on a buffer =
area designated by the user regardless of its content. The 'thing' =
functions (there seem to be no commands) parse buffer contents to derive =
a value or extent.

I don't like the 'dwim' name part either but it has some precedence. A =
single function should suffice but since this is Emacs, we have two of =
them for historical reasons before anything is even released.






Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 27 Jun 2023 02:25:29 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jun 26 22:25:29 2023
Received: from localhost ([127.0.0.1]:47326 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qDyOW-0007Hg-Sc
	for submit <at> debbugs.gnu.org; Mon, 26 Jun 2023 22:25:29 -0400
Received: from eggs.gnu.org ([209.51.188.92]:48678)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1qDyOU-0007HS-Rl
 for 64185 <at> debbugs.gnu.org; Mon, 26 Jun 2023 22:25:28 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qDyOO-0004Xv-M0; Mon, 26 Jun 2023 22:25:20 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=ab+9RL8bjZsQsvUaSBAm/v8ovBWLsIADUGkNQTeebYI=; b=gwBOEMVjEAqr
 z9Q6Qv4AeYXaEqXD7mcR40FZGPURUuIREHiNRHQmesqcdcZTniG4KMmfilefUXeGpuW6dHC/DzyHe
 eyrZ7qbxt0Ua5S9wCIRhe8LcJOt4P9fuV9bHAkQHhOKa9LV+bL+KVu6aWNftPCgzTv6CCTty573zD
 IIt+RGYvDjdCBZxj0UFtT4JQZJE93EIpPm/aYmYDJkmJ8sYaL/xx1FCFidBq64Tc1S/kZo48NJ9Pv
 Ae3UzDsRzmhCcT22+ymBhJol8bB/Mra6mViKSp1UoNtscXOCLorjfdPaP3Ov3ok7CljqfbDFRIb4H
 Ab6ZvMsRC55Y2q+jPW6Aaw==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qDyOO-0005L9-Ai; Mon, 26 Jun 2023 22:25:20 -0400
Date: Tue, 27 Jun 2023 05:25:40 +0300
Message-Id: <83mt0lwsij.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Zachary Kanfer <zkanfer@HIDDEN>
In-Reply-To: <CAFXT+RPEB4evrQFYQoXLtPC1XFBphkBJSaB7C2jxioF9mJVmdQ@HIDDEN>
 (message from Zachary Kanfer on Mon, 26 Jun 2023 15:18:19 -0400)
Subject: Re: bug#64185: proposal for new function: copy-line
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <CAFXT+ROoE3W=t6MHK1J2LwCEmBdYSVv7X5-qtVBmeYTWz5cd3Q@HIDDEN>
 <86fs6fpoio.fsf@HIDDEN>
 <CAFXT+RPRwpZgfPKsyz22+-v6vy7RJwyuwaOEkmunc2MAMSoqZA@HIDDEN>
 <86h6qut970.fsf@HIDDEN>
 <CAFXT+RPEB4evrQFYQoXLtPC1XFBphkBJSaB7C2jxioF9mJVmdQ@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, juri@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Cc: 64185 <at> debbugs.gnu.org
> From: Zachary Kanfer <zkanfer@HIDDEN>
> Date: Mon, 26 Jun 2023 15:18:19 -0400
> 
> > > The code becomes slightly more verbose this way, but is far easier to read
> > > and comprehend. It seems an extremely worthwhile tradeoff to me.
> > 
> > Not sure how often users will read the code of duplicate-line.
> 
> Developers will. And it's easier to read with symbols.

The advantage of symbols for reading the code is very minor, so the
other considerations, in particular the ease of changing the value
interactively, prevail.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 26 Jun 2023 19:18:39 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jun 26 15:18:39 2023
Received: from localhost ([127.0.0.1]:47081 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qDrjS-00045Q-Md
	for submit <at> debbugs.gnu.org; Mon, 26 Jun 2023 15:18:39 -0400
Received: from mail-oo1-f53.google.com ([209.85.161.53]:54375)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <zkanfer@HIDDEN>) id 1qDrjQ-00045B-KB
 for 64185 <at> debbugs.gnu.org; Mon, 26 Jun 2023 15:18:37 -0400
Received: by mail-oo1-f53.google.com with SMTP id
 006d021491bc7-55b85b94bb0so1663634eaf.0
 for <64185 <at> debbugs.gnu.org>; Mon, 26 Jun 2023 12:18:36 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20221208; t=1687807111; x=1690399111;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=JJK81EV+3XWjTD2p3S5CCa9KnJWi4lY9EoGhph5j/gg=;
 b=TUVTiYe1GjANcDiW2RmkwCPaYEkG1XHKIJcYbvhBHXEy3Kz09jrQQKpvJZB/GAUxgN
 83kcwlhUgn9523JaUMqjrAvgovVV7iI+sHoF+xEnKj0bOsZXi6KFRPNctyE4oOUarX2f
 AKEnbWn3igP/sxwkeroM89EcS8QVSLL5btjiBEBDg41Hvqkah0+LAh9iHOjRVUw0AP1g
 Rcm+cgU4Nkx7yJ8cGk4GKzWk1/ME6jEKylkMPQc/rpZROnqoXLhZjxlGHDr08bZZxSBT
 PGtqLjKW1I7tbyD6AQLLEOLbPu+XWAmS98J7Pc/wWaxDAV2Qe51i8mgA74RGCqAYXe7a
 ncvg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20221208; t=1687807111; x=1690399111;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=JJK81EV+3XWjTD2p3S5CCa9KnJWi4lY9EoGhph5j/gg=;
 b=cB186xWD09RmVPqaoI19g+CRKLPGR5kgETcQrw+aNGT0cU7YOChxGKyo41+uexPUZM
 zixpVJGCgExdG5Ar34Qc9/zeSVttvY3urYoKdw0Tjw0GAzMPwdw/3i5jaPRqiaQXJ/29
 rBIyTvpQ0Rr3hxhHJn3TVZ8rSz0L/9yGhyu0DHXQQycmQsvS/D7aY/wEjosBCDRICLbT
 gRjRWId2yqvQQt7XZqX+iYhXQx7J+xWILP+YP0UHFJ0MV8zx4LMdaGtH2DwutdxN1u/5
 fpHvKhc4852nNLabGFp/q2nz/deheFWuhSNUdQS76Idrot+N4k14xQxqIFSznzOW5wKU
 rapQ==
X-Gm-Message-State: AC+VfDyySQNo0rwH9AQKkUciEbRl113PwhqclTAkS86Z9ugg7OMmLM7o
 bztyHkQ9uumOqRmC0SvNAJAASvHOI0crDUobQ5pHUvcE1KWV+A==
X-Google-Smtp-Source: ACHHUZ42VA3otvSyD/PeNC3upGlrNSlCtp4MTEtaBsPPKdrPATI1HPdNkP7KWkl3rGlwlPStZAA3Lsd8yRA6HpcwNWs=
X-Received: by 2002:a4a:df09:0:b0:55a:9fc5:c12c with SMTP id
 i9-20020a4adf09000000b0055a9fc5c12cmr17494951oou.5.1687807110704; Mon, 26 Jun
 2023 12:18:30 -0700 (PDT)
MIME-Version: 1.0
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <CAFXT+ROoE3W=t6MHK1J2LwCEmBdYSVv7X5-qtVBmeYTWz5cd3Q@HIDDEN>
 <86fs6fpoio.fsf@HIDDEN>
 <CAFXT+RPRwpZgfPKsyz22+-v6vy7RJwyuwaOEkmunc2MAMSoqZA@HIDDEN>
 <86h6qut970.fsf@HIDDEN>
In-Reply-To: <86h6qut970.fsf@HIDDEN>
From: Zachary Kanfer <zkanfer@HIDDEN>
Date: Mon, 26 Jun 2023 15:18:19 -0400
Message-ID: <CAFXT+RPEB4evrQFYQoXLtPC1XFBphkBJSaB7C2jxioF9mJVmdQ@HIDDEN>
Subject: Re: bug#64185: proposal for new function: copy-line
To: Juri Linkov <juri@HIDDEN>
Content-Type: multipart/alternative; boundary="00000000000048766605ff0d37cd"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--00000000000048766605ff0d37cd
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

 > > The code becomes slightly more verbose this way, but is far easier to
read
> > and comprehend. It seems an extremely worthwhile tradeoff to me.
>
> Not sure how often users will read the code of duplicate-line.

Developers will. And it's easier to read with symbols.

On Mon, Jun 26, 2023 at 1:41=E2=80=AFPM Juri Linkov <juri@HIDDEN> wrote=
:

> >> This might surprise you, but code would be more complicated with
> symbols.
> >> Instead of
> >>
> >>   (unless (eq duplicate-line-final-position 0)
> >>     (forward-line duplicate-line-final-position)
> >>
> >> it will be
> >>
> >>   (unless (eq duplicate-line-final-position 'old-original-line)
> >>     (when (eq duplicate-line-final-position
> 'first-copied-duplicate-line)
> >>       (forward-line 1))
> >>     (when (eq duplicate-line-final-position 'last-copied-duplicate-lin=
e)
> >>       (forward-line -1))
> >
> > The code doesn't need the (unless (eq duplicate-line-final-position
> > 'old-original-line) ... check. It can be only the two when cases. But
> > that's a secondary matter.
>
> I agree.
>
> > The code becomes slightly more verbose this way, but is far easier to
> read
> > and comprehend. It seems an extremely worthwhile tradeoff to me.
>
> Not sure how often users will read the code of duplicate-line.
>

--00000000000048766605ff0d37cd
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><span class=3D"gmail-im">
&gt; &gt; The code becomes slightly more verbose this way, but is far easie=
r to read<br>
&gt; &gt; and comprehend. It seems an extremely worthwhile tradeoff to me.<=
br>
&gt; <br></span><div>&gt; Not sure how often users will read the code of du=
plicate-line.</div><div><br></div><div>Developers will. And it&#39;s easier=
 to read with symbols.<br></div></div><br><div class=3D"gmail_quote"><div d=
ir=3D"ltr" class=3D"gmail_attr">On Mon, Jun 26, 2023 at 1:41=E2=80=AFPM Jur=
i Linkov &lt;<a href=3D"mailto:juri@HIDDEN">juri@HIDDEN</a>&gt; wro=
te:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px =
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">&gt;&gt; Thi=
s might surprise you, but code would be more complicated with symbols.<br>
&gt;&gt; Instead of<br>
&gt;&gt; <br>
&gt;&gt;=C2=A0 =C2=A0(unless (eq duplicate-line-final-position 0)<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0(forward-line duplicate-line-final-position)<br=
>
&gt;&gt; <br>
&gt;&gt; it will be<br>
&gt;&gt; <br>
&gt;&gt;=C2=A0 =C2=A0(unless (eq duplicate-line-final-position &#39;old-ori=
ginal-line)<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0(when (eq duplicate-line-final-position &#39;fi=
rst-copied-duplicate-line)<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0(forward-line 1))<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0(when (eq duplicate-line-final-position &#39;la=
st-copied-duplicate-line)<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0(forward-line -1))<br>
&gt;<br>
&gt; The code doesn&#39;t need the (unless (eq duplicate-line-final-positio=
n<br>
&gt; &#39;old-original-line) ... check. It can be only the two when cases. =
But<br>
&gt; that&#39;s a secondary matter.<br>
<br>
I agree.<br>
<br>
&gt; The code becomes slightly more verbose this way, but is far easier to =
read<br>
&gt; and comprehend. It seems an extremely worthwhile tradeoff to me.<br>
<br>
Not sure how often users will read the code of duplicate-line.<br>
</blockquote></div>

--00000000000048766605ff0d37cd--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 26 Jun 2023 18:35:23 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jun 26 14:35:23 2023
Received: from localhost ([127.0.0.1]:47051 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qDr3b-0000GU-2m
	for submit <at> debbugs.gnu.org; Mon, 26 Jun 2023 14:35:23 -0400
Received: from eggs.gnu.org ([209.51.188.92]:39760)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1qDr3Y-0000G7-Kg
 for 64185 <at> debbugs.gnu.org; Mon, 26 Jun 2023 14:35:21 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qDr3Q-00015N-8O; Mon, 26 Jun 2023 14:35:13 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=qbg+SWjnvvMSXipUtsAetCVPdFDfBq9tsyOJHFXU1ZU=; b=IRRZDoWXOXtl
 fkVZHQYa0+HVSH+N/ylbt2pRi4M03/SWIbw9R496vrH31yir9YZ1AUx6RkQPjw5p+zVqhbWfqUaIi
 8PvxOiKIK8QhaXteqJT31j/mRooJ24UtUKxCBrtX4ML7Zuu5llzS4IV7FS7sbhgkOJ34Li0Lu1ud4
 +VJjkJWKGpcnCKHP2gAT6NqcOTsWb5HiFqSPen64WVskNRNwGWW2zb8W8IFHy6n0OtDQEyppHPZl8
 oTlAmH3URuTMhgtt+YESi6QUWYeM84cC59mFwUYCa+XhztPtTKLTm6qS3S42auqXCe8fo6e2O/lS4
 xrHcgFWLF2jBbfOMO9aI1g==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qDr3F-0003sk-Aw; Mon, 26 Jun 2023 14:35:11 -0400
Date: Mon, 26 Jun 2023 21:35:21 +0300
Message-Id: <83o7l2vzpy.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
In-Reply-To: <86r0pyt9a9.fsf@HIDDEN> (message from Juri Linkov on
 Mon, 26 Jun 2023 20:37:10 +0300)
Subject: Re: bug#64185: proposal for new function: copy-line
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <86o7l66rw8.fsf@HIDDEN>
 <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN>
 <86a5wnmu3x.fsf@HIDDEN>
 <62289D18-9F94-47E5-8D2B-DBDB35C2E2DB@HIDDEN>
 <86r0pyt9a9.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, mattias.engdegard@HIDDEN, me@HIDDEN,
 zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Juri Linkov <juri@HIDDEN>
> Cc: Eli Zaretskii <eliz@HIDDEN>,  64185 <at> debbugs.gnu.org,
>   me@HIDDEN,  zkanfer@HIDDEN
> Date: Mon, 26 Jun 2023 20:37:10 +0300
> 
> Since the design of a general thing-duplication command
> is still under development, maybe it would be appropriate
> to remove `duplicate-dwim` from emacs-29, and continue
> its development in master?

No, we are not removing any commands from emacs-29 at this time.  If
you plan incompatible changes in duplicate-dwim in the future, I'm
prepared to consider changes to it to make those future changes less
incompatible, but I won't agree to removing it.  This discussion
should have happened a year ago, and now it's too late for such
proposals.  Sorry.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 26 Jun 2023 17:57:04 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jun 26 13:57:04 2023
Received: from localhost ([127.0.0.1]:47026 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qDqSV-0007aR-Qh
	for submit <at> debbugs.gnu.org; Mon, 26 Jun 2023 13:57:04 -0400
Received: from mx0b-00069f02.pphosted.com ([205.220.177.32]:61192)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <drew.adams@HIDDEN>) id 1qDqST-0007a1-W3
 for 64185 <at> debbugs.gnu.org; Mon, 26 Jun 2023 13:57:02 -0400
Received: from pps.filterd (m0246630.ppops.net [127.0.0.1])
 by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 35QHclJP009485; Mon, 26 Jun 2023 17:57:01 GMT
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com;
 h=from : to : cc :
 subject : date : message-id : references : in-reply-to : content-type :
 content-transfer-encoding : mime-version; s=corp-2023-03-30;
 bh=OxEiPuUAsOiv2u40Pdmvel9zeyMmv4tCJU7hc9SpYaw=;
 b=iuDDqeh1ULYXhAzkJV+wMYB3JbQMC/xUgfBYNLB7fGN+hUfeE0UNgJspZGOccqBFF7+N
 kFRwFLmFIK9oFVs5VO7X6rmEKypBJrW+TFB9nTfvKggzeGR/8NkJwhwTG3rkBi8PYl6F
 KK811yuVinc127k3SGD2hxgC/XQpG7ZlIw7wDHhptoUV227fL8ZS/GQLkCWF+0ecvtwi
 AQVzzEENEqYSPRBZpVy30t/UK0ilpxVFkwuxBb8SfAaqVm522W3X+WMAkg5tmY34CWXi
 118i68V5azL5asT682jCn40PIdiQngeCdSDX0joy9apXMQ0lyExxFicExTiyAkkOJ66l Qw== 
Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com
 (iadpaimrmta03.appoci.oracle.com [130.35.103.27])
 by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3rdpwdb9r7-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Mon, 26 Jun 2023 17:57:01 +0000
Received: from pps.filterd
 (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1])
 by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19)
 with ESMTP id 35QGNpxU026472; Mon, 26 Jun 2023 17:57:00 GMT
Received: from nam10-mw2-obe.outbound.protection.outlook.com
 (mail-mw2nam10lp2100.outbound.protection.outlook.com [104.47.55.100])
 by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id
 3rdpx9wru3-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Mon, 26 Jun 2023 17:57:00 +0000
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XOZketHmu9gWEHsjUBEpbZfRVz7Ex1laDo3NSn2HFrjDYBMNs8nCvDDWbIw5jYrY6uo4x2QxXBXOI5Dln0BsxYG0RjXuUcWlTITkTP6X7YFioQurRRujwmXdC57u34EyXgg+2jZbOjNZyaYWBUu48ItUlJ40oxPqvQAjM7bLtPXrnCvDO47FhTMEHN3bxZJkQhHY/2lhDoszErwMM76/RVk2UzushS5OShqYgRLHDmhhNtbf5bnUvrki6BBrSPGjA2q5cUTOkMFXH8iVg+WoGdmzABdonqow+orM3AxHCffS3MBpji7tJTkfDAcRfh4n1cKoYUf1N1CUpCX0SN+kkw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=OxEiPuUAsOiv2u40Pdmvel9zeyMmv4tCJU7hc9SpYaw=;
 b=QlrRLn3kPgqqT/CNGKrAgKAoYesghN665SC3g/P1QzwcaDaK9FSsGjd90xhCS6AZ846E6c0h96JM1GCVjRCnbpk2u3DysNuv5du8RhZBlavk+KXvooBVD6ABxbWJ7lYHSwheZHjiSKQsLA5KAL9AtnQALSDhi6YSyTsQB/qJCKMHKyBw87LjNz/l8zgAv3G5fDjM8Y5jIgwfB0KZLjpKiKxMer6K1sb7LtEUhnx5Bo0TxyGO6CmU9M4/TdQWAawLjrvRc0Ni5E+EdOzW91CrWRa/GNGRFCluRZmYjaIslnkmK8Kfc9dB2p1RQpxgAIT0V0nVcEYDma6i+Fd4EA9OVQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com;
 dkim=pass header.d=oracle.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=OxEiPuUAsOiv2u40Pdmvel9zeyMmv4tCJU7hc9SpYaw=;
 b=Q2Jl+hnNxQUAGcAJdiNQv9ZYr+uFU2N4F3lx7a7h54z3Deqp5fFwWfMm/gaQKVwQSlo2iCFIyL4R65SwRNGL51+zULzOopDdRT/PfYrG7BM1c6CVw2k4xY98FnOs3Ms8kJaqat6B2sWPyIzTY8pjCAdi0sn/5ki9Z6wB+owR7DY=
Received: from SJ0PR10MB5488.namprd10.prod.outlook.com (2603:10b6:a03:37e::19)
 by CO1PR10MB4643.namprd10.prod.outlook.com (2603:10b6:303:9c::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Mon, 26 Jun
 2023 17:56:58 +0000
Received: from SJ0PR10MB5488.namprd10.prod.outlook.com
 ([fe80::22c4:9389:291e:aeae]) by SJ0PR10MB5488.namprd10.prod.outlook.com
 ([fe80::22c4:9389:291e:aeae%7]) with mapi id 15.20.6521.024; Mon, 26 Jun 2023
 17:56:58 +0000
From: Drew Adams <drew.adams@HIDDEN>
To: Juri Linkov <juri@HIDDEN>, =?iso-8859-1?Q?Mattias_Engdeg=E5rd?=
 <mattias.engdegard@HIDDEN>
Subject: RE: [External] : bug#64185: proposal for new function: copy-line
Thread-Topic: [External] : bug#64185: proposal for new function: copy-line
Thread-Index: AQHZqFWP85W9i3GKR0y1WabNRySpp6+dXZdQ
Date: Mon, 26 Jun 2023 17:56:57 +0000
Message-ID: <SJ0PR10MB5488B1F3EC4017C850F9CD33F326A@HIDDEN>
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <86o7l66rw8.fsf@HIDDEN>
 <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN>
 <86a5wnmu3x.fsf@HIDDEN>
 <62289D18-9F94-47E5-8D2B-DBDB35C2E2DB@HIDDEN>
 <86r0pyt9a9.fsf@HIDDEN>
In-Reply-To: <86r0pyt9a9.fsf@HIDDEN>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: SJ0PR10MB5488:EE_|CO1PR10MB4643:EE_
x-ms-office365-filtering-correlation-id: 758679c8-c30b-4d1e-a531-08db766ebc49
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: QYFddzPN24oDUH9qrN2NIkg4jwI1Z7/KgEsrZdhrRQLn5TD2IW9h9MRgTW/wJ8v0THafyFdWxOImqDK898fCi/5t9L0MIkwRE2xfvECad0aartwiJbJeTswevGGON8Cg0bP4MkLI3p3l0QcesmGZdQ0EFed0xKhSwcP/RIqLN49lf2yFzpESkqcIh1s36fAg817r2PkXWs0WX7Z7P4DFGzkALWY/GAyHWZQU5Ot9B0SbVjbj8V2InjycSL1UKcKJEAjpazNAZD6usk0hk3GgqijmAnhSIVPZ+Gee/eLNmIfYFHDYXUIIJXB0E54w8CTHL8M+qPwYlQTcgCmMngnuK+4g15P5NFNadXN4/jTZ94fvBV0B6CADheZl2nQKJW5C5SoEdoTRs69GFTwl/uCx5QTZNGBk9z2eedqOehyNkHDkf/xDSYsbCVbM5qS0rksQUeMISzDW5kTQbKLwiuI+J1BWZGrlc3dnVBm1k3YbApXllh5s3EJJsiXQqrnPKZCXu0bo/ovEW3s+Xh7GdpXTVlfgXH1dF3bV2MtvM8OJoDW/TRV9+zZ2nfqedoPQR+073v1zfN7wbxXhsGSU5fonI5hoeX+RRwUq1o4yAVWkHHKX/JGBeKdjq0/uFlw2PtcU
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:SJ0PR10MB5488.namprd10.prod.outlook.com; PTR:; CAT:NONE;
 SFS:(13230028)(376002)(366004)(136003)(396003)(346002)(39860400002)(451199021)(6506007)(478600001)(71200400001)(7696005)(54906003)(110136005)(2906002)(4744005)(26005)(186003)(9686003)(5660300002)(44832011)(316002)(86362001)(33656002)(52536014)(76116006)(122000001)(38100700002)(66946007)(8936002)(8676002)(55016003)(66476007)(4326008)(41300700001)(66556008)(66446008)(38070700005)(64756008);
 DIR:OUT; SFP:1101; 
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?BC5iNELT5y9iAK72msbdbbzxcfDCPYN6LMMZAjKQCU7vqsxN6CeJ1Na0rq?=
 =?iso-8859-1?Q?bJzC90JU+rqCjwMIna1kcnq8wNA1U5BaUwBokwgzDITAKzHa4TdCMIuVQE?=
 =?iso-8859-1?Q?J4ALQgScgDaxClnLdrZF/rDX+7bogRyTMdKQduXN2fbU70r5RRNd+da56A?=
 =?iso-8859-1?Q?0ZJPOXJ9dZZqdg4s8XtL5PcaAjcf7sl55AzOIyWFABfgkth2jHB8SBTUzW?=
 =?iso-8859-1?Q?M9ujJ5yBvOfnPoSt/1WctgKG4EuF1QxGHwBbNaUz8SkmuKbxCrJDNieJC5?=
 =?iso-8859-1?Q?312Ut8Cuum2HxoCEZUMy4HahnrJQMtmkExOtJW0KZ4vK+X9EkHVS7z7hgs?=
 =?iso-8859-1?Q?qFFTsVPt/Nk+kid6ucA9ipUO2kqSn/c14xUgfDN6KevVkRWPgXjxrbWc+E?=
 =?iso-8859-1?Q?Sxj42ew2LZ0Wviy7TvK+CL5tJmauyD6ROT6tr1suBXkJl+iM8uzu8lZ4OW?=
 =?iso-8859-1?Q?2G1W5hnVc554IqQCMVpHbQEco6ejXBPJMMFwokFbN2e+G02IxQepHZKMsA?=
 =?iso-8859-1?Q?nBtTnFXbcgdiMj0TONbdo7J5NCuzD6J0D29NyF6cFvaU6wYTqDlb/jZurY?=
 =?iso-8859-1?Q?P6KGCCwAA7LtqfkI75Zud9IhDUHa97xjoPlkgmhduDQzuYucI4vZunfAd0?=
 =?iso-8859-1?Q?TdDiCv3LYt8sOGTK586ccRobbrwpFLwX8yHSCLs54VkEWNm3xgnLYosinL?=
 =?iso-8859-1?Q?zaftpg6HCfhkFutcMiAlrPK4Bzxo01Ufh11jd0cZ3h3oCHahlWxuzvrh/u?=
 =?iso-8859-1?Q?pPM13jR1VL94ef2nVL42EwLFR3lUiQHA2OZzFYuaqscYAhda8GEzuxJQPw?=
 =?iso-8859-1?Q?shNcdpf9qQd/GJM1X/+E/zjuOFRIQVPCmTV7lhqNf/D3+5W5LG2x+LD1LN?=
 =?iso-8859-1?Q?0lsyqbKpqOKxtQef39GeXO8NBrKqS0u+Qfyf+AuFSHnGPQ8q/buJ+36B3R?=
 =?iso-8859-1?Q?y3e/jmVQ23E0vyQzW7X7iJyBM4astimLPGCULmJC+scFYZz4VMzXTa3wqP?=
 =?iso-8859-1?Q?MhVaQoElCqCgOwNx4J+zdLCLet55s94Vh1IuggNNU0PtJQUPMBSQRkxHzl?=
 =?iso-8859-1?Q?pQe//BGrx3YqeqRzJlYx+6qOfl0tUVPBmXUSo+9eDW0W5Uz/HrST3/3SMc?=
 =?iso-8859-1?Q?o5fntMZ5xryilGzK64RUUHl1V8c2whCjOr/9f3NrJpjh2WjjhPQQb1IW6f?=
 =?iso-8859-1?Q?umyX6/yi8BjdGMU9xojUOuikjWVfBKqpCfL2dwiKxXX0qby/KodtJpTZ3s?=
 =?iso-8859-1?Q?3XRVajOyXTkIdEUoYlqMnWi+wAc4IChJcEtfIMKSW/t52RcrKpAYri1Pgq?=
 =?iso-8859-1?Q?XynI0YIz6qm4QiTV6FW6X7obkvAU8jEqN5Yrkkot7AnzkUlzRht00iz4On?=
 =?iso-8859-1?Q?cXdPFK6YdLtULA2CNiIMVHaQ8qyKBdL5JX5PG2uozygkI6pRSRQph1CO7X?=
 =?iso-8859-1?Q?vS2pqbaYRCAZDFkM6rNWZz5wEBVpPyse6m0XANmx3E9imnhK6RdEGp/nVL?=
 =?iso-8859-1?Q?ySouf1qwl1Cozd+iKdMDFrrAQoL5TrAy3vkPoPXTXMBSCwT2mj5+cb5+57?=
 =?iso-8859-1?Q?o7vqLRO8h5ba+gSexG5/R2NbUj/WJbWBAj9OT7mNPfVjD7FHnV+iHd82Ut?=
 =?iso-8859-1?Q?VMP3uoaz37VDwgTtVCc/gY4RboG2E3PLNg?=
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: NBUNFjB+bOqB5dJo701U8wgC/PPxgHebatvM0nzpcHirFzM+sb4guybI9e3TbI2zDFuUTwuh8Eq1ZpxEko6sL1HEs9UhsZNQ0+WPxBCTrhN5S8EvIRhRaHD+S80dIrxrXaFnxb+O6AhCy+DANyVZE03kcZgozhHd1ffy8zR7H4n4zAQQ9C1AJ9EwbydNQNO1Flg61lvMuskcqC8h+UFfGc0fsUYCWDFAl8ceGF/89imZ4xv21PakyqiYzXubliTxyUQL+835W3HLsp0rkE6lBaL3JAwYvb/wKKSDtCBaItvFIixnuns8122mZnPx4HfT0aLOensDdwyVrGlzK0RrFqENFAZcWo97Bjxxgt+aJ/25vz0qbqHx3z3lNJ/WvONS37prVM1qBgvo3HeB0+3kLnNhBfj804d3HszmbjgafrCg24DaOxtePwvz2N8cWCiIKoA+C+WtSV9BRlzZXFPQlRxOeW340ujUXGs7pC9am+pLaalLgxRzZRD+o5QCGuG+1GyO3420BRGDzAmpQR2ENegUJAz19QXfflhHcA2GOi7piLCywSC3GE3ZguD0LNCZbhnAOJhjgeEkAG8ep2q0Nlc4KmAZSnoDRENJy21Si3LgG0s5qs2+ezpWTuf0ciC6Qt+9c5RIHeiGMGBnbE011pMyq2crKLEhjJV3GU2EG2J1LW98jA9KYQdU2VqPTdhoansz7Q66nViUTaC6FVeZcfeCo56NrytrwfwKDysm3HOsQ0qQJP4LlGXZTC8xRTkdxXQvBBy0IsVhQ8l7BHSjPCjZY2dZXjO3RRQqqQdBJBukZLjMsguDd9c7RxBDyY6AIH48MtZMnS9RInHX5FLzgDJuQ1/lIyUrGg1jRdhk3ZHVzeXeifVGqhjx3+3oBCcW
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR10MB5488.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 758679c8-c30b-4d1e-a531-08db766ebc49
X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Jun 2023 17:56:58.0021 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: sQKt0+pFe9iijgchdv5Dmf8B40bsZ4wKFAClr5yrkenqdhFHXZaErGWghBUrR4rytAXNoFYORhZJ9zDEUuVWUQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR10MB4643
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26
 definitions=2023-06-26_15,2023-06-26_03,2023-05-22_02
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0
 spamscore=0
 mlxlogscore=727 malwarescore=0 phishscore=0 bulkscore=0 suspectscore=0
 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2305260000 definitions=main-2306260164
X-Proofpoint-GUID: 4bLvXzTqwd5go7gYNPkvBUi9bCf2ogHd
X-Proofpoint-ORIG-GUID: 4bLvXzTqwd5go7gYNPkvBUi9bCf2ogHd
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 64185
Cc: "64185 <at> debbugs.gnu.org" <64185 <at> debbugs.gnu.org>,
 Eli Zaretskii <eliz@HIDDEN>, "me@HIDDEN" <me@HIDDEN>,
 "zkanfer@HIDDEN" <zkanfer@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

> Then I think `duplicate-dwim` is a misnomer, and it was misdesigned.

FWIW/OT:

This is pretty much the case for all commands named `*-dwim'.

In practice, DWIM doesn't mean "do what I mean".  It means something more l=
ike "do what its author wants" or even "do something its author couldn't de=
scribe well, let alone name well".




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 26 Jun 2023 17:41:51 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jun 26 13:41:51 2023
Received: from localhost ([127.0.0.1]:46997 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qDqDn-00074h-A9
	for submit <at> debbugs.gnu.org; Mon, 26 Jun 2023 13:41:51 -0400
Received: from relay3-d.mail.gandi.net ([217.70.183.195]:38363)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1qDqDm-00074V-Eg
 for 64185 <at> debbugs.gnu.org; Mon, 26 Jun 2023 13:41:50 -0400
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
Received: by mail.gandi.net (Postfix) with ESMTPSA id C954160008;
 Mon, 26 Jun 2023 17:41:42 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Mattias =?iso-8859-1?Q?Engdeg=E5rd?= <mattias.engdegard@HIDDEN>
Subject: Re: bug#64185: proposal for new function: copy-line
In-Reply-To: <62289D18-9F94-47E5-8D2B-DBDB35C2E2DB@HIDDEN> ("Mattias
 =?iso-8859-1?Q?Engdeg=E5rd=22's?= message of "Sun, 25 Jun 2023 21:46:55
 +0200")
Organization: LINKOV.NET
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <86o7l66rw8.fsf@HIDDEN>
 <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN>
 <86a5wnmu3x.fsf@HIDDEN>
 <62289D18-9F94-47E5-8D2B-DBDB35C2E2DB@HIDDEN>
Date: Mon, 26 Jun 2023 20:37:10 +0300
Message-ID: <86r0pyt9a9.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, me@HIDDEN,
 zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

>> I don't see from where we can get such assumption - e.g. extending
>> the region to the copied text also makes sense.
>
> No, it's actually a firm requirement.  Extending the region would only
> allow making exponentially more copies which is useless in practice.
> Try it yourself and you'll see.

I remember already the need of doing this several times: to create
initial content for testing first I select one line then duplicate
its region, then select the whole buffer and duplicate it again
and so on, so the duplicated region grows exponentially.

>> When the users will request a setting for columns, then we could
>> add a new option e.g. `duplicate-dwim-final-column`.
>
> Request submitted then!

`duplicate-dwim-final-column` should be applied to both cases?
To rectangular regions and to lines?  In case of lines it could
define whether to keep the original column, or move to the
beginning of the line, or to the end of the line?

>> And if the users need to do the same with regions, then a separate
>> option could be added e.g. `duplicate-dwim-final-region`.
>
> How about we, for a change, attempt this thing called design, instead
> of the customary Emacs piecemeal hodgepodge?

Then I think `duplicate-dwim` is a misnomer, and it was misdesigned.
A proper name that matches the design of `thing-at-point`, would be
`duplicate-thing`.  thingatpt.el contains the definition of the region
among many other things that are candidates for duplication.

Since the design of a general thing-duplication command
is still under development, maybe it would be appropriate
to remove `duplicate-dwim` from emacs-29, and continue
its development in master?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 25 Jun 2023 19:47:08 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jun 25 15:47:08 2023
Received: from localhost ([127.0.0.1]:43696 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qDVhU-00021V-0N
	for submit <at> debbugs.gnu.org; Sun, 25 Jun 2023 15:47:08 -0400
Received: from mail-lf1-f43.google.com ([209.85.167.43]:59588)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mattias.engdegard@HIDDEN>) id 1qDVhP-00020y-FN
 for 64185 <at> debbugs.gnu.org; Sun, 25 Jun 2023 15:47:06 -0400
Received: by mail-lf1-f43.google.com with SMTP id
 2adb3069b0e04-4f76a0a19d4so3257366e87.2
 for <64185 <at> debbugs.gnu.org>; Sun, 25 Jun 2023 12:47:03 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20221208; t=1687722417; x=1690314417;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:sender:from:to:cc:subject
 :date:message-id:reply-to;
 bh=C3lADr5GSkxZmrKkAKot+j0pnUgRmv64BYzeX5emiFQ=;
 b=NGAaxHRY62xfajuSh2GxWH8MO1FElSLRenhZbAa4lnXfXqvql68dnu9D6FVw1hk9qx
 Fc0L7Uzc+LOl74f8+q9zHueiHPQu8r2enI19yfLw1xkOD7PYB3RijIcjtme8Gwg2jXK8
 0a0+kyguRuGcojcB87qZtxPOUEMZMw9zrlaIlyAv9kM13d//uJ79+iX9lL1nPLrsg36z
 A5TJm0YJCRFnbT8P1mMyp3QkI/PdT+CQamk6CR4PRjtVuvBXpboLd60G9yBRCbynYLII
 Q022CvzUXfgJ1LVbxX+VVE/Ccmx697PKJHDUJVjDnk6A3iiiczKjJhsZZgRbhCSf6AGP
 Wa0Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20221208; t=1687722417; x=1690314417;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:sender:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=C3lADr5GSkxZmrKkAKot+j0pnUgRmv64BYzeX5emiFQ=;
 b=RbUd6usciH+7uHdLCRLfDYzeVQRXYTb4m8k+rGoBQqxofqYmFHIZGrzRSFlPcYjzCi
 XD3VBaIpNpy1Tx8mIbGYhBliuZsmYaLwRtDUPPbv9DpUGqX8ZVgGcdBE914XZR0vUWv9
 HF/btAvl06WnBTbmy5vDug1aSkL32AjtFgHWTOD/fvCphZluIpS3ae218XF8b3oIoYdu
 enBRrLoFHur2plYGPEAVLuF9ZQFMjWxKxtEcDtS6OHKeZJLH8jzjffuIXXXyaS04YwQK
 BVBzM3k5+xw5GAMh3eIcDx6ZdSYqXO4Qvhli3Q74X0jKjOpVxh8NpM9k8USppPp/OZrW
 bHfA==
X-Gm-Message-State: AC+VfDyqZT3CtrhoDcIPMjY0HkbVoBKPtw/jAO1lCH9F0y1uXNvAWjoO
 qhyFMY3+3pxWz6PUDFp7DRs=
X-Google-Smtp-Source: ACHHUZ5xnfYUvwI6+FmXOBZ+Jo8dDJVlLs1Dy0GFvFO43ZIEBHoYDOczYeku91zB4FShVlpa6OuCMg==
X-Received: by 2002:a19:7b02:0:b0:4f8:83f:babe with SMTP id
 w2-20020a197b02000000b004f8083fbabemr15317733lfc.62.1687722417003; 
 Sun, 25 Jun 2023 12:46:57 -0700 (PDT)
Received: from smtpclient.apple (c188-150-165-235.bredband.tele2.se.
 [188.150.165.235]) by smtp.gmail.com with ESMTPSA id
 n25-20020a195519000000b004fb6c61e79bsm341117lfe.117.2023.06.25.12.46.56
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Sun, 25 Jun 2023 12:46:56 -0700 (PDT)
Content-Type: text/plain;
	charset=us-ascii
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.15\))
Subject: Re: bug#64185: proposal for new function: copy-line
From: =?utf-8?Q?Mattias_Engdeg=C3=A5rd?= <mattias.engdegard@HIDDEN>
In-Reply-To: <86a5wnmu3x.fsf@HIDDEN>
Date: Sun, 25 Jun 2023 21:46:55 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <62289D18-9F94-47E5-8D2B-DBDB35C2E2DB@HIDDEN>
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <86o7l66rw8.fsf@HIDDEN>
 <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN>
 <86a5wnmu3x.fsf@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
X-Mailer: Apple Mail (2.3654.120.0.1.15)
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, me@HIDDEN,
 zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

25 juni 2023 kl. 19.24 skrev Juri Linkov <juri@HIDDEN>:

> I don't see from where we can get such assumption - e.g. extending the =
region
> to the copied text also makes sense.

No, it's actually a firm requirement. Extending the region would only =
allow making exponentially more copies which is useless in practice. Try =
it yourself and you'll see.

> When the users will request a setting for columns, then we could
> add a new option e.g. `duplicate-dwim-final-column`.

Request submitted then!

>> If we use separate settings they should naturally work the same way,
>> or users will wonder who is running the asylum.
>=20
> It would be crazy to mix apples and oranges.  =
`duplicate-line-final-line`
> should be applied only to `duplicate-line`.

No, what I meant is that it would make little sense to use different =
types and values for settings affecting the exact same operation on =
different pieces of text.

>  And if the users need to
> do the same with regions, then a separate option could be added
> e.g. `duplicate-dwim-final-region`.

How about we, for a change, attempt this thing called design, instead of =
the customary Emacs piecemeal hodgepodge?

> (Not sure why now one example uses boring "abcde"
> instead of the overall style with "foo", "bar", "zot").

Yes there are oodles of those so I just fix the ones in examples I'm =
changing for other reasons.
Maybe we should take a day off and do them all in one batch.





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 25 Jun 2023 17:27:55 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jun 25 13:27:55 2023
Received: from localhost ([127.0.0.1]:43633 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qDTWl-0006xw-35
	for submit <at> debbugs.gnu.org; Sun, 25 Jun 2023 13:27:55 -0400
Received: from relay5-d.mail.gandi.net ([217.70.183.197]:45899)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1qDTWg-0006xI-Q4
 for 64185 <at> debbugs.gnu.org; Sun, 25 Jun 2023 13:27:52 -0400
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
Received: by mail.gandi.net (Postfix) with ESMTPSA id 133021C0003;
 Sun, 25 Jun 2023 17:27:42 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Mattias =?iso-8859-1?Q?Engdeg=E5rd?= <mattias.engdegard@HIDDEN>
Subject: Re: bug#64185: proposal for new function: copy-line
In-Reply-To: <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN> ("Mattias
 =?iso-8859-1?Q?Engdeg=E5rd=22's?= message of "Sat, 24 Jun 2023 13:29:36
 +0200")
Organization: LINKOV.NET
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <86o7l66rw8.fsf@HIDDEN>
 <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN>
Date: Sun, 25 Jun 2023 20:24:10 +0300
Message-ID: <86a5wnmu3x.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, me@HIDDEN,
 zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

>> It would be a major undertaking to design
>> a similar option for `duplicate-dwim` for consistency with `duplicate-line`
>> because of more decisions necessary to make: whether to move point
>> to the beginning or the end of the copied regions, whether to select
>> all the copied regions or only one of them, etc.
>
> Actually we are helped by some constraints: duplicate-dwim must keep
> the region active afterwards, so that the user can run the same
> command immediately and get another copy.  This is important for
> usability.

I don't see from where we can get such assumption - e.g. extending the region
to the copied text also makes sense.

> It seems reasonable to assume that a user wants the same behaviour in
> `duplicate-dwim` whether it is lines or columns being duplicated, and
> have a single variable controlling both.  This assumption may be
> wrong: perhaps a user prefers to stay when copying a line, but move
> when copying columns?

When the users will request a setting for columns, then we could
add a new option e.g. `duplicate-dwim-final-column`.

> If we use separate settings they should naturally work the same way,
> or users will wonder who is running the asylum.

It would be crazy to mix apples and oranges.  `duplicate-line-final-line`
should be applied only to `duplicate-line`.  And if the users need to
do the same with regions, then a separate option could be added
e.g. `duplicate-dwim-final-region`.

> A perhaps more intuitive way of describing the behaviour is not where
> to put point afterwards, but whether copies are inserted before or
> after the original.  That will generalise to duplication of regions,
> rectangular or contiguous, a little better.
>
> It's also easy to describe:
>
> (defcustom duplicate-direction 'after
>   "Where to insert the copies made by `duplicate-line' and `duplicate-dwim'.
> Valid values are `after' and `before' (the original text).
>   :group 'editing
>   :type '(choice (const :tag "After original" after)
>                  (const :tag "Before original" before)))
>
> What do you think?  Should we have a single setting for lines and
> regions, or individual settings for lines and regions, or for lines,
> rectangles and contiguous regions?

My first implementation of `duplicate-line` prepended the copied line
before the original line, and that implementation was flawed: it had
no visual feedback when copying the first line at the top of the window.

>> to my surprise the shortdoc of `substring` has no examples
>> of a negative argument.  I don't know whether this omission
>> is intentional to make the string section shorter.
>
> Thank you for noticing this. I doubt it was intentional.
> The examples have now been extended a bit.
> I'm sure we could do better with examples in general if we were to make an effort.

Thanks.

(Not sure why now one example uses boring "abcde"
instead of the overall style with "foo", "bar", "zot").




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 25 Jun 2023 17:27:51 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jun 25 13:27:51 2023
Received: from localhost ([127.0.0.1]:43630 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qDTWg-0006xf-On
	for submit <at> debbugs.gnu.org; Sun, 25 Jun 2023 13:27:51 -0400
Received: from relay2-d.mail.gandi.net ([217.70.183.194]:51193)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1qDTWc-0006xB-Io
 for 64185 <at> debbugs.gnu.org; Sun, 25 Jun 2023 13:27:46 -0400
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
Received: by mail.gandi.net (Postfix) with ESMTPSA id 846E740004;
 Sun, 25 Jun 2023 17:27:39 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Zachary Kanfer <zkanfer@HIDDEN>
Subject: Re: bug#64185: proposal for new function: copy-line
In-Reply-To: <CAFXT+ROoE3W=t6MHK1J2LwCEmBdYSVv7X5-qtVBmeYTWz5cd3Q@HIDDEN>
 (Zachary Kanfer's message of "Sat, 24 Jun 2023 23:45:52 -0400")
Organization: LINKOV.NET
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <CAFXT+ROoE3W=t6MHK1J2LwCEmBdYSVv7X5-qtVBmeYTWz5cd3Q@HIDDEN>
Date: Sun, 25 Jun 2023 20:19:20 +0300
Message-ID: <86fs6fpoio.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org,
 Mattias =?iso-8859-1?Q?Engdeg=E5rd?= <mattias.engdegard@HIDDEN>,
 me@HIDDEN, Eli Zaretskii <eliz@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

> 1. These values will be read far more often than they are written. A symbol
> like 'last is somewhat self-documenting. On the other hand, what is 1? Is
> it the old line, because it's highest up on the screen? Is it the last new
> line, because the last new line has the greatest point, and 1 is the
> greatest of the options? (In the current implementation, it's the first new
> line. Did you know that until I mentioned it?) The values have to be
> recalled each time they are used.
> 2. These settings aren't really integers. We won't want to add, multiply,
> subtract or divide them.
> 3. Using integers leads to more complicated code. The current patch has a
> line (unless (< duplicate-line-final-position 0) ...). I believe this would
> be easier to read as (unless (equal duplicate-line-final-position 'last) .
> ..).

This might surprise you, but code would be more complicated with symbols.
Instead of

  (unless (eq duplicate-line-final-position 0)
    (forward-line duplicate-line-final-position)

it will be

  (unless (eq duplicate-line-final-position 'old-original-line)
    (when (eq duplicate-line-final-position 'first-copied-duplicate-line)
      (forward-line 1))
    (when (eq duplicate-line-final-position 'last-copied-duplicate-line)
      (forward-line -1))




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 25 Jun 2023 03:46:13 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jun 24 23:46:13 2023
Received: from localhost ([127.0.0.1]:41796 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qDGhY-0002fU-TR
	for submit <at> debbugs.gnu.org; Sat, 24 Jun 2023 23:46:13 -0400
Received: from mail-oo1-f45.google.com ([209.85.161.45]:44274)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <zkanfer@HIDDEN>) id 1qDGhV-0002fE-4p
 for 64185 <at> debbugs.gnu.org; Sat, 24 Jun 2023 23:46:11 -0400
Received: by mail-oo1-f45.google.com with SMTP id
 006d021491bc7-562f8262e0cso1563712eaf.0
 for <64185 <at> debbugs.gnu.org>; Sat, 24 Jun 2023 20:46:09 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20221208; t=1687664763; x=1690256763;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=E/Hhbmg5VyHpyZYDosxsKFmt4UNm8jYbtc5tYjvAAb0=;
 b=dZChuLN5p63mi5KXom3uzMcYKaVSK3BTk7jnRcOmGBFN0woSm0wtTCHMCIUUcFhK5C
 tgUMWQiVMzXFh7b2bgczINj63ROnrKle9ufsxe224w9USUYVbH5AUcERZmWnBZLIQTFC
 d7Q6xWWLxMF6+V+/XOmsyIhhRqBxwAo3qtfkF668ae3Qg+uG2SLmAJKUMPRzB3MtMTM6
 5vvJT5PXO795JT00pH/PQLKygYUYRg9goJP2LldhLZEr9QXNIXds9PAR1os2XzqbbsIR
 pXD+8rR4VAUD8r/wBslrO52fnaOwnSuNrEAwNaTHPM0gX/13LOM0S8TzlCxPsai9okw1
 EpmA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20221208; t=1687664763; x=1690256763;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=E/Hhbmg5VyHpyZYDosxsKFmt4UNm8jYbtc5tYjvAAb0=;
 b=i8bkFirOy31xFtdivtdufGn0IaI72ZNeKjk/5U2N360kUAxR629DHTUyW449mYZZ27
 BDxZK2bp/AwD1LRhJkqCaXKnCpaNEtch47gaHgHEfFHvjuSkTRgnBJwqq0ENz1KKYAf5
 69ONOmdPsfoF124xsO/7LJJ8f3WHKdhIEREBJ0vs4GjN+hBqgbSWhVQjWJNp4Iw/MtXZ
 mgT+hWag2uj9fDtFS1SJdVu63QHqykaGmuMwJUs6Pkmj43GcruZNaRdUqekPLt+kjFtx
 Ioz88uoCSY6UoJPoKjJhuseqDynnhZtW8P9418G/CkwE9mvrlf+uB4q6IIlvA1IhrvWR
 oNiQ==
X-Gm-Message-State: AC+VfDzCical6m7CBdDgmSG9qclyyuDIxySATwGqc/7rfnVoW+uh6RLP
 nI4HntV+IKkkAp6BXlVndc2qr8iUckOeHjFpeGM=
X-Google-Smtp-Source: ACHHUZ5o1Pp616Yq0rBU2znpqwXiZYPy1tP66Fh9KbCSBkBA6wQoQ4Z9Z19BG+rneFpzhb38c8Gr48Zbmj3d8h/SOes=
X-Received: by 2002:a4a:d759:0:b0:560:b02c:eb5c with SMTP id
 h25-20020a4ad759000000b00560b02ceb5cmr10468449oot.9.1687664763248; Sat, 24
 Jun 2023 20:46:03 -0700 (PDT)
MIME-Version: 1.0
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
In-Reply-To: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
From: Zachary Kanfer <zkanfer@HIDDEN>
Date: Sat, 24 Jun 2023 23:45:52 -0400
Message-ID: <CAFXT+ROoE3W=t6MHK1J2LwCEmBdYSVv7X5-qtVBmeYTWz5cd3Q@HIDDEN>
Subject: Re: bug#64185: proposal for new function: copy-line
To: =?UTF-8?Q?Mattias_Engdeg=C3=A5rd?= <mattias.engdegard@HIDDEN>
Content-Type: multipart/alternative; boundary="000000000000b6a5ed05feec12b5"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, me@HIDDEN,
 Juri Linkov <juri@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--000000000000b6a5ed05feec12b5
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

>  And I agree that allowing any integer as value isn't necessary the best
choice here. It's a false flexibility; nobody will ever set it to something
other than 0, 1 or -1. Symbols would probably be better, for several
reasons.

I agree. The reasons I can think of are as follows:

1. These values will be read far more often than they are written. A symbol
like 'last is somewhat self-documenting. On the other hand, what is 1? Is
it the old line, because it's highest up on the screen? Is it the last new
line, because the last new line has the greatest point, and 1 is the
greatest of the options? (In the current implementation, it's the first new
line. Did you know that until I mentioned it?) The values have to be
recalled each time they are used.
2. These settings aren't really integers. We won't want to add, multiply,
subtract or divide them.
3. Using integers leads to more complicated code. The current patch has a
line (unless (< duplicate-line-final-position 0) ...). I believe this would
be easier to read as (unless (equal duplicate-line-final-position 'last)
...).

On Fri, Jun 23, 2023 at 5:08=E2=80=AFAM Mattias Engdeg=C3=A5rd <
mattias.engdegard@HIDDEN> wrote:

> >  'duplicate-dwim' duplicates the region if it is active.  If not, it
> >  works like 'duplicate-line'.  An active rectangular region is
> > -duplicated on its right-hand side.
> > +duplicated on its right-hand side.  The new user option
> > +'duplicate-line-final-position' specifies where to move point
> > +after duplicating the line.
>
> This makes it unclear to what extent the variable affects
> `duplicate-dwim`. (For some reason it only does so when the region is
> inactive, which doesn't seem right.)
>
> And I agree that allowing any integer as value isn't necessary the best
> choice here. It's a false flexibility; nobody will ever set it to somethi=
ng
> other than 0, 1 or -1. Symbols would probably be better, for several
> reasons.
>
> Finally, it's a bit surprising that this is even discussed for inclusion
> in Emacs 29 at this stage, given the raw state of the design. What about =
we
> do a proper job on master instead, instead of rushing a half-baked new
> feature into a branch that is already deep into pre-release?
>
>

--000000000000b6a5ed05feec12b5
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><span class=3D"gmail-im">&gt; =C2=A0And I agree that allow=
ing any integer as value=20
isn&#39;t necessary the best choice here. It&#39;s a false flexibility; nob=
ody=20
will ever set it to something other than 0, 1 or -1. Symbols would=20
probably be better, for several reasons.<br><br></span>I agree. The reasons=
 I can think of are as follows:<br><br>1.
 These values will be read far more often than they are written. A=20
symbol like &#39;last is somewhat self-documenting. On the other hand, what=
=20
is 1? Is it the old line, because it&#39;s highest up on the screen? Is it=
=20
the last new line, because the last new line has the greatest point, and
 1 is the greatest of the options? (In the current implementation, it&#39;s=
=20
the first new line. Did you know that until I mentioned it?) The values=20
have to be recalled each time they are used.<br>2. These settings aren&#39;=
t really integers. We won&#39;t want to add, multiply, subtract or divide t=
hem.<br>3.
 Using integers leads to more complicated code. The current patch has a=20
line (unless (&lt; duplicate-line-final-position 0) ...). I believe this
 would be easier to read as (unless (equal duplicate-line-final-position
 &#39;last) ...).</div><br><div class=3D"gmail_quote"><div dir=3D"ltr" clas=
s=3D"gmail_attr">On Fri, Jun 23, 2023 at 5:08=E2=80=AFAM Mattias Engdeg=C3=
=A5rd &lt;<a href=3D"mailto:mattias.engdegard@HIDDEN">mattias.engdegard@=
gmail.com</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=
=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding=
-left:1ex">&gt;=C2=A0 &#39;duplicate-dwim&#39; duplicates the region if it =
is active.=C2=A0 If not, it<br>
&gt;=C2=A0 works like &#39;duplicate-line&#39;.=C2=A0 An active rectangular=
 region is<br>
&gt; -duplicated on its right-hand side.<br>
&gt; +duplicated on its right-hand side.=C2=A0 The new user option<br>
&gt; +&#39;duplicate-line-final-position&#39; specifies where to move point=
<br>
&gt; +after duplicating the line.<br>
<br>
This makes it unclear to what extent the variable affects `duplicate-dwim`.=
 (For some reason it only does so when the region is inactive, which doesn&=
#39;t seem right.)<br>
<br>
And I agree that allowing any integer as value isn&#39;t necessary the best=
 choice here. It&#39;s a false flexibility; nobody will ever set it to some=
thing other than 0, 1 or -1. Symbols would probably be better, for several =
reasons.<br>
<br>
Finally, it&#39;s a bit surprising that this is even discussed for inclusio=
n in Emacs 29 at this stage, given the raw state of the design. What about =
we do a proper job on master instead, instead of rushing a half-baked new f=
eature into a branch that is already deep into pre-release?<br>
<br>
</blockquote></div>

--000000000000b6a5ed05feec12b5--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 24 Jun 2023 11:29:46 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jun 24 07:29:46 2023
Received: from localhost ([127.0.0.1]:39995 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qD1Sc-0002WI-DV
	for submit <at> debbugs.gnu.org; Sat, 24 Jun 2023 07:29:46 -0400
Received: from mail-lf1-f53.google.com ([209.85.167.53]:60450)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mattias.engdegard@HIDDEN>) id 1qD1Sa-0002W4-92
 for 64185 <at> debbugs.gnu.org; Sat, 24 Jun 2023 07:29:45 -0400
Received: by mail-lf1-f53.google.com with SMTP id
 2adb3069b0e04-4f96d680399so1988331e87.0
 for <64185 <at> debbugs.gnu.org>; Sat, 24 Jun 2023 04:29:44 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20221208; t=1687606178; x=1690198178;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:sender:from:to:cc:subject
 :date:message-id:reply-to;
 bh=fmNo5aU5ksRZVCyLTGrph+e9G+KYiWxkI/tbrC2hLE8=;
 b=dhKoq2TjHm+zT92sugr6X1WzHjGbtLOyE708ub2IMhGDA4KlzpHB3gbRLF3qscKmnm
 w/g30UEQAvPRXPafJGlq2OVn/5dZHaChunRyahH9843rg/uTgeFHNYuvi+xwFJXgb21E
 chW8GqJg29+aHnttyR9Vd8MNFHoaOHclQovFarPFFAsyYsz23fukNXQ0UpqiAIv0dNvs
 3wz+H94Oj4TRjfe9gHgR4pGANjhU19Po4F0RrXmWDxrChlreCZNGavSLeMTe/S8tCfZm
 ctDLXnQfI3q3txly9wqo665f6BhQLfcMz2GXuCFhq6c7cUWeSX0iuSu0VxOrDf1rKWDQ
 OmwA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20221208; t=1687606178; x=1690198178;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:sender:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=fmNo5aU5ksRZVCyLTGrph+e9G+KYiWxkI/tbrC2hLE8=;
 b=laOgMLulcUAVQzFS+XqDRDZGK96c5ezZ5VQd7IIZxIgr/6FkW696Rzb8BjhPSbH0fb
 9QP1pk1ik+64JCIL2ZClAygWeD9ricXZqBoeW40Q2uwHnMkzzvtYOngbhGzNPlO6SShP
 VOzMTW4v5MlvEqY+qA/cT0+LnUbsip0k6vUXc69cAKmHlRUFaT0WnvCsb51K4wbbOAsP
 5IB0lAnxt9aRH1UlJuFLZDo+aR7WH2Eml6H03GOrr44E5QbdbjvFC4SwAAnzr9QFSHzu
 Q3aoQglxDSHlDUCVKTzRD7SXqKppjoHl+l4AR8q4e1kwNWjaf4bqPIiPRXNu0bzlNoPS
 2LAg==
X-Gm-Message-State: AC+VfDzP0Wl87esAEJq9PlCB60fPVvNC/R12WY5C57+suor4vFMPMpMX
 ic0TWnEEpU/ygA/zQoNx5hM=
X-Google-Smtp-Source: ACHHUZ6Qr4R6RNee5bBd6R4d9SHfAmBpeVuDxWZtbx1XjAZlDKNpONw/pHDYz/Mhp5AOkm3aPJMcbg==
X-Received: by 2002:a05:6512:3c88:b0:4f9:6a7b:b8de with SMTP id
 h8-20020a0565123c8800b004f96a7bb8demr5374044lfv.3.1687606177668; 
 Sat, 24 Jun 2023 04:29:37 -0700 (PDT)
Received: from smtpclient.apple (c188-150-165-235.bredband.tele2.se.
 [188.150.165.235]) by smtp.gmail.com with ESMTPSA id
 d1-20020a05651221c100b004f84226f0bfsm165688lft.26.2023.06.24.04.29.37
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Sat, 24 Jun 2023 04:29:37 -0700 (PDT)
Content-Type: text/plain;
	charset=us-ascii
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.15\))
Subject: Re: bug#64185: proposal for new function: copy-line
From: =?utf-8?Q?Mattias_Engdeg=C3=A5rd?= <mattias.engdegard@HIDDEN>
In-Reply-To: <86o7l66rw8.fsf@HIDDEN>
Date: Sat, 24 Jun 2023 13:29:36 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <8494C1C8-435A-4817-9FA0-7D0A5F8DEC96@HIDDEN>
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <86o7l66rw8.fsf@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
X-Mailer: Apple Mail (2.3654.120.0.1.15)
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, me@HIDDEN,
 zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

23 juni 2023 kl. 18.45 skrev Juri Linkov <juri@HIDDEN>:

> It would be a major undertaking to design
> a similar option for `duplicate-dwim` for consistency with =
`duplicate-line`
> because of more decisions necessary to make: whether to move point
> to the beginning or the end of the copied regions, whether to select
> all the copied regions or only one of them, etc.

Actually we are helped by some constraints: duplicate-dwim must keep the =
region active afterwards, so that the user can run the same command =
immediately and get another copy. This is important for usability.

It seems reasonable to assume that a user wants the same behaviour in =
`duplicate-dwim` whether it is lines or columns being duplicated, and =
have a single variable controlling both. This assumption may be wrong: =
perhaps a user prefers to stay when copying a line, but move when =
copying columns?

If we use separate settings they should naturally work the same way, or =
users will wonder who is running the asylum.

A perhaps more intuitive way of describing the behaviour is not where to =
put point afterwards, but whether copies are inserted before or after =
the original. That will generalise to duplication of regions, =
rectangular or contiguous, a little better.

It's also easy to describe:

(defcustom duplicate-direction 'after
  "Where to insert the copies made by `duplicate-line' and =
`duplicate-dwim'.
Valid values are `after' and `before' (the original text).
  :group 'editing
  :type '(choice (const :tag "After original" after)
                 (const :tag "Before original" before)))

What do you think? Should we have a single setting for lines and =
regions, or individual settings for lines and regions, or for lines, =
rectangles and contiguous regions?

> For users who know Emacs Lisp and like to write plain values in =
~/.emacs,
> the values 0, 1, -1 are more intuitive and familiar due to functions
> like `substring`, etc.

I suppose I'm one of those who don't know Emacs Lisp then!

> to my surprise the shortdoc of `substring` has no examples
> of a negative argument.  I don't know whether this omission
> is intentional to make the string section shorter.

Thank you for noticing this. I doubt it was intentional.
The examples have now been extended a bit.
I'm sure we could do better with examples in general if we were to make =
an effort.





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 23 Jun 2023 16:59:49 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 23 12:59:49 2023
Received: from localhost ([127.0.0.1]:39493 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCk8T-0004Kh-Ah
	for submit <at> debbugs.gnu.org; Fri, 23 Jun 2023 12:59:49 -0400
Received: from relay3-d.mail.gandi.net ([217.70.183.195]:48903)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1qCk8P-0004K8-3B
 for 64185 <at> debbugs.gnu.org; Fri, 23 Jun 2023 12:59:45 -0400
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
Received: by mail.gandi.net (Postfix) with ESMTPSA id 1FFB660003;
 Fri, 23 Jun 2023 16:59:37 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#64185: proposal for new function: copy-line
In-Reply-To: <83ttuy1w95.fsf@HIDDEN> (Eli Zaretskii's message of "Fri, 23 Jun
 2023 10:19:18 +0300")
Organization: LINKOV.NET
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN> <837cry73z9.fsf@HIDDEN>
 <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
 <838rcc3wzs.fsf@HIDDEN> <86ttv0ynyk.fsf@HIDDEN>
 <83mt0r31n4.fsf@HIDDEN> <86a5wrxv9z.fsf@HIDDEN>
 <83edm32xy9.fsf@HIDDEN> <86wmzvwecw.fsf@HIDDEN>
 <87sfaiejuf.fsf@HIDDEN> <83ttuy1w95.fsf@HIDDEN>
Date: Fri, 23 Jun 2023 19:46:39 +0300
Message-ID: <86edm26ruc.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, Robert Pluim <rpluim@HIDDEN>, me@HIDDEN,
 zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit

>> The first thing that springs to mind here is "where on the line is
>> point placed?". At the beginning, end, same column as when
>> duplicate-line was invoked? (I know I could just read the code, but
>> the caffeine hasnʼt kicked in yet :-))
>
> This is a NEWS entry, it doesn't have to provide such details.  The
> doc string should, so if these details are missing from the doc
> string, it should be improved to include them.

Now the docstring is updated:


--=-=-=
Content-Type: text/x-diff
Content-Disposition: inline; filename=duplicate-line-final-position.patch

diff --git a/etc/NEWS b/etc/NEWS
index ca0d602e9ad..aa3b758a815 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -696,7 +696,9 @@ between these modes while the user is inputting a command by hitting
 'duplicate-line' duplicates the current line the specified number of times.
 'duplicate-dwim' duplicates the region if it is active.  If not, it
 works like 'duplicate-line'.  An active rectangular region is
-duplicated on its right-hand side.
+duplicated on its right-hand side.  The new user option
+'duplicate-line-final-position' specifies where to move point
+after duplicating the line.
 
 ---
 ** Files with the ".eld" extension are now visited in 'lisp-data-mode'.
diff --git a/lisp/misc.el b/lisp/misc.el
index ca013d5f72f..898fe9dd168 100644
--- a/lisp/misc.el
+++ b/lisp/misc.el
@@ -63,21 +63,42 @@ copy-from-above-command
 				 (+ n (point)))))))
     (insert string)))
 
+(defcustom duplicate-line-final-position 0
+  "Where to put point after duplicating the line with `duplicate-line'.
+When 0, leave point on the original line.
+When 1, move point to the first new line.
+When -1, move point to the last new line.
+The same column is preserved after moving to a new line."
+  :type '(choice (const :tag "Leave point on old line" 0)
+                 (const :tag "Move point to first new line" 1)
+                 (const :tag "Move point to last new line" -1)
+                 (integer))
+  :group 'editing
+  :version "29.1")
+
 ;;;###autoload
 (defun duplicate-line (&optional n)
   "Duplicate the current line N times.
 Interactively, N is the prefix numeric argument, and defaults to 1.
+The user option `duplicate-line-final-position' specifies where to
+move point after duplicating the line.
 Also see the `copy-from-above-command' command."
   (interactive "p")
   (unless n
     (setq n 1))
-  (let ((line (buffer-substring (line-beginning-position) (line-end-position))))
-    (save-excursion
-      (forward-line 1)
-      (unless (bolp)
-        (insert "\n"))
-      (dotimes (_ n)
-        (insert line "\n")))))
+  (let ((line (buffer-substring (line-beginning-position) (line-end-position)))
+        (pos (point))
+        (col (current-column)))
+    (forward-line 1)
+    (unless (bolp)
+      (insert "\n"))
+    (dotimes (_ n)
+      (insert line "\n"))
+    (unless (< duplicate-line-final-position 0)
+      (goto-char pos))
+    (unless (eq duplicate-line-final-position 0)
+      (forward-line duplicate-line-final-position)
+      (move-to-column col))))
 
 (declare-function rectangle--duplicate-right "rect" (n))
 
diff --git a/test/lisp/misc-tests.el b/test/lisp/misc-tests.el
index f1d22e099b9..ea27ea1653b 100644
--- a/test/lisp/misc-tests.el
+++ b/test/lisp/misc-tests.el
@@ -88,6 +88,20 @@ misc--duplicate-line
     (duplicate-line 2)
     (should (equal (buffer-string) "abc\ndefg\ndefg\ndefg\nh\n"))
     (should (equal (point) 7)))
+  ;; Duplicate a line (twice) and move point to the first duplicated line.
+  (with-temp-buffer
+    (insert "abc\ndefg\nh\n")
+    (goto-char 7)
+    (let ((duplicate-line-final-position 1)) (duplicate-line 2))
+    (should (equal (buffer-string) "abc\ndefg\ndefg\ndefg\nh\n"))
+    (should (equal (point) 12)))
+  ;; Duplicate a line (twice) and move point to the last duplicated line.
+  (with-temp-buffer
+    (insert "abc\ndefg\nh\n")
+    (goto-char 7)
+    (let ((duplicate-line-final-position -1)) (duplicate-line 2))
+    (should (equal (buffer-string) "abc\ndefg\ndefg\ndefg\nh\n"))
+    (should (equal (point) 17)))
   ;; Duplicate a non-terminated line.
   (with-temp-buffer
     (insert "abc")

--=-=-=--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 23 Jun 2023 16:59:49 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 23 12:59:49 2023
Received: from localhost ([127.0.0.1]:39491 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCk8S-0004Ke-Un
	for submit <at> debbugs.gnu.org; Fri, 23 Jun 2023 12:59:49 -0400
Received: from relay3-d.mail.gandi.net ([217.70.183.195]:34249)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1qCk8M-0004K5-F0
 for 64185 <at> debbugs.gnu.org; Fri, 23 Jun 2023 12:59:43 -0400
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
Received: by mail.gandi.net (Postfix) with ESMTPSA id 1A97560002;
 Fri, 23 Jun 2023 16:59:34 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Mattias =?iso-8859-1?Q?Engdeg=E5rd?= <mattias.engdegard@HIDDEN>
Subject: Re: bug#64185: proposal for new function: copy-line
In-Reply-To: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN> ("Mattias
 =?iso-8859-1?Q?Engdeg=E5rd=22's?= message of "Fri, 23 Jun 2023 11:07:58
 +0200")
Organization: LINKOV.NET
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
Date: Fri, 23 Jun 2023 19:45:31 +0300
Message-ID: <86o7l66rw8.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, me@HIDDEN,
 zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

>>  'duplicate-dwim' duplicates the region if it is active.  If not, it
>>  works like 'duplicate-line'.  An active rectangular region is
>> -duplicated on its right-hand side.
>> +duplicated on its right-hand side.  The new user option
>> +'duplicate-line-final-position' specifies where to move point
>> +after duplicating the line.
>
> This makes it unclear to what extent the variable affects
> `duplicate-dwim`.  (For some reason it only does so when the region is
> inactive, which doesn't seem right.)

The new command `duplicate-line` would be useless for many users
without that option.  There is no such problem for `duplicate-dwim`
that is more complicated.  It would be a major undertaking to design
a similar option for `duplicate-dwim` for consistency with `duplicate-line`
because of more decisions necessary to make: whether to move point
to the beginning or the end of the copied regions, whether to select
all the copied regions or only one of them, etc.

> And I agree that allowing any integer as value isn't necessary the
> best choice here.  It's a false flexibility; nobody will ever set it
> to something other than 0, 1 or -1.  Symbols would probably be better,
> for several reasons.

For users of the Customization UI the choices are explained clearly:

  :type '(choice (const :tag "Leave point on old line" 0)
                 (const :tag "Move point to first new line" 1)
                 (const :tag "Move point to last new line" -1)
                 (integer))

For users who know Emacs Lisp and like to write plain values in ~/.emacs,
the values 0, 1, -1 are more intuitive and familiar due to functions
like `substring`, etc.

BTW, to my surprise the shortdoc of `substring` has no examples
of a negative argument.  I don't know whether this omission
is intentional to make the string section shorter.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 23 Jun 2023 11:07:12 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 23 07:07:12 2023
Received: from localhost ([127.0.0.1]:37777 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCedE-0000Pv-5R
	for submit <at> debbugs.gnu.org; Fri, 23 Jun 2023 07:07:12 -0400
Received: from eggs.gnu.org ([209.51.188.92]:43178)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1qCedB-0000Pf-Sq
 for 64185 <at> debbugs.gnu.org; Fri, 23 Jun 2023 07:07:10 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qCed5-0004hX-Uq; Fri, 23 Jun 2023 07:07:03 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=4hlj1iA1uMliL4u31ISj9ArqiRcbyw8huXVPbjyPEnc=; b=UKYmzZfnEYoOeQzP78JZ
 j4ZJHm+VRBhZT8ica9b+TYM+hGwOG/Y+N+rZS2sMLywq5DUtxFkTREU3I7nd8jNwF919aRGLp0lmX
 +YrvK0XU1AT0iiTPYESXUljjq+m1jAmMT1Oc7w+BG4KYAkucCnickZgfp9ORyDoXn7eNQjoOBWFIB
 IVkByc0I9e1S5YMMgdlWNbAiHdulb3sxJk3lMggU26dbd1dQ0ptFV2W+D+RiSAP+ddgfhFy77//1b
 0ZIOaa+ig0jnVJDZoERXTiCyvthoSBpWLXQN5cooOU/HZ3Eim19R6FCecCn5zRbXHirh7gr2mdtU+
 /7h/YpbmkJDV9A==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qCed5-00048C-Ec; Fri, 23 Jun 2023 07:07:03 -0400
Date: Fri, 23 Jun 2023 14:07:15 +0300
Message-Id: <83mt0q1lp8.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Mattias =?utf-8?Q?Engdeg=C3=A5rd?= <mattias.engdegard@HIDDEN>
In-Reply-To: <098B9138-4BC1-481B-A1A3-19B935787858@HIDDEN> (message from
 Mattias =?utf-8?Q?Engdeg=C3=A5rd?= on Fri, 23 Jun 2023 12:50:52 +0200)
Subject: Re: bug#64185: proposal for new function: copy-line
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <83r0q21nij.fsf@HIDDEN> <098B9138-4BC1-481B-A1A3-19B935787858@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN, zkanfer@HIDDEN,
 juri@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Mattias Engdegård <mattias.engdegard@HIDDEN>
> Date: Fri, 23 Jun 2023 12:50:52 +0200
> Cc: juri@HIDDEN,
>  64185 <at> debbugs.gnu.org,
>  me@HIDDEN,
>  zkanfer@HIDDEN
> 
> 23 juni 2023 kl. 12.28 skrev Eli Zaretskii <eliz@HIDDEN>:
> 
> > This is a new feature in Emacs 29, so adding customization
> > opportunities to it that allow fine control of its behavior is fine at
> > this stage.  Of course, if the proposal is controversial, we shouldn't
> > rush.  My impression till now was that it wasn't controversial.  If
> > the only issue is better documentation and/or whether the value should
> > be a number or a symbol, then I see no problem with installing this on
> > the release branch.
> 
> The new setting would be quite incomplete if it doesn't apply to the
> more general and useful duplicate-dwim as well.

It is? why?  The difference between these two commands is that
duplicate-dwim is sensitive to the active region, but in that case how
is it useful to talk about lines, given that region could be a part of
a line or several lines plus a part of the first and the last one?

So it sounds to me that we could easily leave duplicate-dwim as it is
now, i.e. disregard this option in that command.

Why isn't that "good enough" for Emacs 29?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 23 Jun 2023 10:51:03 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 23 06:51:02 2023
Received: from localhost ([127.0.0.1]:37745 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCeNa-0008NE-JN
	for submit <at> debbugs.gnu.org; Fri, 23 Jun 2023 06:51:02 -0400
Received: from mail-lf1-f46.google.com ([209.85.167.46]:54507)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mattias.engdegard@HIDDEN>) id 1qCeNY-0008Mj-7C
 for 64185 <at> debbugs.gnu.org; Fri, 23 Jun 2023 06:51:01 -0400
Received: by mail-lf1-f46.google.com with SMTP id
 2adb3069b0e04-4f7677a94d1so604133e87.0
 for <64185 <at> debbugs.gnu.org>; Fri, 23 Jun 2023 03:51:00 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20221208; t=1687517454; x=1690109454;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:sender:from:to:cc:subject
 :date:message-id:reply-to;
 bh=A8NI3uNO50Fw1ROf9kZWTfibbkh6A5eIufkluC3jUEc=;
 b=gS39oQepWDEmchvZBCy16q2BUqqZhphRibVESPGy5nyn0eBJnZBnA9p7pLos+4o0yp
 4xGP0tM7WAimVpK5tg2R96qSf7zyc2SPqghw/91oCL7wUIck1bZ4Knhmx30xcuoIp1lX
 re1HP/psfmOpOyoe/P4hndDA9+Fs6HcN8aEBguooQdAAPUCPcUJCnw9LWF6HvRVwKovi
 kuB7hl9FxpMl6M1i3/PVUKgwjF6MlP1709BLvQiHkHpDqMye8A8mvXg8B+45h9MtSsXe
 ji6H1FtFDIXnsjGAZ1stlvV9q1enOkfHGK9SgQphz9OLDi2v8SclKogeImV3h8sZhJrE
 uj6Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20221208; t=1687517454; x=1690109454;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:sender:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=A8NI3uNO50Fw1ROf9kZWTfibbkh6A5eIufkluC3jUEc=;
 b=OCbMf5fiwYvRjgJoXRhEvjwFmEOHKI2WdG4yyawM8jTk+G7PO0rBbjkej0wtdCYx0U
 KICcMOVurtyAI6u0BUskljsogy2AJpUMl3/30qDV0sCx+qFe+VthIwZjD2tAZ9V2b00Z
 6X+Ws0lob3XhcD/Os2L85XTLPRY7RoCJ3tUqGqvTmz+3GvVcVJQoHIK765I9rSl18iT9
 zAoPydE3xIwSL0QKfzrXjuFfDEHCe1OsN4q9taWGxIuIiAPJnG6X09lNhI2/uh8rWmK2
 du7NxW2FR8hUGtkQDze7Qw+ah+OdIs7qX3+mEbcDyfYZ33qn5IeZUa8P0ZRH9ZVZaO4F
 jGdw==
X-Gm-Message-State: AC+VfDwyh8Mfjpg0L1PMg/iDlk7gGzlH80Fls5xBUMu0LuV48RD2yFV0
 LsjmUAGT5qu7rF/5sfZIf+Q=
X-Google-Smtp-Source: ACHHUZ6RLFJlsouKYpu6HsxXpUNOtn2OkYBJQ/hoCFLD29ygaTEoHCLKjyUVPlrv2l+cYHF4uVsH8w==
X-Received: by 2002:a05:6512:224d:b0:4f9:5d3b:6a2a with SMTP id
 i13-20020a056512224d00b004f95d3b6a2amr5376276lfu.58.1687517453879; 
 Fri, 23 Jun 2023 03:50:53 -0700 (PDT)
Received: from smtpclient.apple (c188-150-165-235.bredband.tele2.se.
 [188.150.165.235]) by smtp.gmail.com with ESMTPSA id
 p2-20020a19f002000000b004f85885cff1sm1376604lfc.134.2023.06.23.03.50.53
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Fri, 23 Jun 2023 03:50:53 -0700 (PDT)
Content-Type: text/plain;
	charset=us-ascii
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.15\))
Subject: Re: bug#64185: proposal for new function: copy-line
From: =?utf-8?Q?Mattias_Engdeg=C3=A5rd?= <mattias.engdegard@HIDDEN>
In-Reply-To: <83r0q21nij.fsf@HIDDEN>
Date: Fri, 23 Jun 2023 12:50:52 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <098B9138-4BC1-481B-A1A3-19B935787858@HIDDEN>
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
 <83r0q21nij.fsf@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
X-Mailer: Apple Mail (2.3654.120.0.1.15)
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN, zkanfer@HIDDEN,
 juri@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

23 juni 2023 kl. 12.28 skrev Eli Zaretskii <eliz@HIDDEN>:

> This is a new feature in Emacs 29, so adding customization
> opportunities to it that allow fine control of its behavior is fine at
> this stage.  Of course, if the proposal is controversial, we shouldn't
> rush.  My impression till now was that it wasn't controversial.  If
> the only issue is better documentation and/or whether the value should
> be a number or a symbol, then I see no problem with installing this on
> the release branch.

The new setting would be quite incomplete if it doesn't apply to the =
more general and useful duplicate-dwim as well. I can help with that but =
obviously want it done properly.

It's not as straightforward as when duplicating lines because the region =
would need to move, and it's a lot more complicated for rectangles. This =
may take some time to get right.

In particular, the full generality of allowing an arbitrary number to be =
specified adds quite some complexity here, and it's all useless =
gold-plating -- nobody will ever set that knob to 3, say.






Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 23 Jun 2023 10:28:02 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 23 06:28:02 2023
Received: from localhost ([127.0.0.1]:37720 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCe1K-0007g1-6l
	for submit <at> debbugs.gnu.org; Fri, 23 Jun 2023 06:28:02 -0400
Received: from eggs.gnu.org ([209.51.188.92]:50278)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1qCe1H-0007fX-Q5
 for 64185 <at> debbugs.gnu.org; Fri, 23 Jun 2023 06:28:00 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qCe1B-0001Dg-By; Fri, 23 Jun 2023 06:27:53 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=n+In3eiRF1enB6FqcpPekaoVeXchrgCMTq1D2ZNxDp0=; b=jM9JNot4pSgp2B7/MpY+
 KhENVanHUiQdPFixvjMynuVH6gfPpyfFFrDqLRqmYBfAHHPMHIjsnuiSGAvJp6VOLDzXmBcoowHT+
 o44AABlPC8o1AiBYsnX3P4iIBIwFs7YYAtRlzC6DM7M8cMBOYcHYSFOR5p7XqgG1tlU3eyFU58fTk
 vkaoL0sdGYByj4FtZ8sOJPHX4IQdkefNwf+ODdXnvmfqJaM9hRUW7HhyK3fAYku2oS3Itp8GAbwcx
 y6HzbgboKSPtrn9ylJZtNXOBDnnAnSXC9lPUMNIdFO2ox12aK2rxTu0/u129Jk0B/ELzsNU1fqRUS
 FfHlBOiGvAx87g==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qCe1A-0003n2-Dt; Fri, 23 Jun 2023 06:27:53 -0400
Date: Fri, 23 Jun 2023 13:28:04 +0300
Message-Id: <83r0q21nij.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Mattias =?utf-8?Q?Engdeg=C3=A5rd?= <mattias.engdegard@HIDDEN>
In-Reply-To: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN> (message from
 Mattias =?utf-8?Q?Engdeg=C3=A5rd?= on Fri, 23 Jun 2023 11:07:58 +0200)
Subject: Re: bug#64185: proposal for new function: copy-line
References: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN, zkanfer@HIDDEN,
 juri@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Mattias Engdegård <mattias.engdegard@HIDDEN>
> Date: Fri, 23 Jun 2023 11:07:58 +0200
> Cc: Eli Zaretskii <eliz@HIDDEN>,
>  64185 <at> debbugs.gnu.org,
>  me@HIDDEN,
>  zkanfer@HIDDEN
> 
> Finally, it's a bit surprising that this is even discussed for inclusion in Emacs 29 at this stage, given the raw state of the design. What about we do a proper job on master instead, instead of rushing a half-baked new feature into a branch that is already deep into pre-release?

This is a new feature in Emacs 29, so adding customization
opportunities to it that allow fine control of its behavior is fine at
this stage.  Of course, if the proposal is controversial, we shouldn't
rush.  My impression till now was that it wasn't controversial.  If
the only issue is better documentation and/or whether the value should
be a number or a symbol, then I see no problem with installing this on
the release branch.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 23 Jun 2023 09:08:07 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 23 05:08:07 2023
Received: from localhost ([127.0.0.1]:37678 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCclz-0005RT-Ep
	for submit <at> debbugs.gnu.org; Fri, 23 Jun 2023 05:08:07 -0400
Received: from mail-lj1-f177.google.com ([209.85.208.177]:57450)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mattias.engdegard@HIDDEN>) id 1qCclx-0005Qr-Nt
 for 64185 <at> debbugs.gnu.org; Fri, 23 Jun 2023 05:08:06 -0400
Received: by mail-lj1-f177.google.com with SMTP id
 38308e7fff4ca-2b4619ef079so6882211fa.2
 for <64185 <at> debbugs.gnu.org>; Fri, 23 Jun 2023 02:08:05 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20221208; t=1687511280; x=1690103280;
 h=to:cc:date:message-id:subject:mime-version
 :content-transfer-encoding:from:sender:from:to:cc:subject:date
 :message-id:reply-to;
 bh=x2n9pqSP8P5PlE035NmINIbyVJk3V932670UMWOsqmY=;
 b=E3cwmH7bZtsG+HrGuIflJkFVEUrJ21GEUWLyB8Kj4+7+tluIUYh1zAJFlsWr6fCLxn
 sVc2Tou55C+crRTyAuaYChrUez1MG0U+aDfrudpHPlz6nPOev/98eFIxSjmTjRjT4yUu
 5TRV9kuH1hVYpqSja8xVIcIB7odWUfWIHQUfBzLeGMj3syWH9MTX+qsNV1hQFuFjVeOB
 3PwUS727M3zDB9i4Df7zTN6a0QRkwa93NuY5i5Ste8gUETGCqgUTV3e0g8v97USYwZ04
 SBh7RarV5xt3GGxdrd46eWzgnJmrLsvw573f8UMlQp0SJd7DwzEqDbDt3xBl0ooqiy+W
 wPcg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20221208; t=1687511280; x=1690103280;
 h=to:cc:date:message-id:subject:mime-version
 :content-transfer-encoding:from:sender:x-gm-message-state:from:to:cc
 :subject:date:message-id:reply-to;
 bh=x2n9pqSP8P5PlE035NmINIbyVJk3V932670UMWOsqmY=;
 b=lsQUpBeibj1NVNyqDbRQD9vP2/1/7w6JmDJAe1wb5kCVNULZ4BzWmoPO1MVYnYlClZ
 uWMq81hC+XIJt+HmkoZIapckPsIm7d3o/cGoyI9gx9QuS66ehVcLCpvQ4rFeO/+bl1w6
 GE2+QsfUp49OWk//So4oO3C7jurpfm0cYYc7HOZaxJRsifjtcMuOtr1AkFml671D0ual
 KvwKzzHi5xiMjzHuggDkAt0qYmZN2QATeVRxgTqURbIXHV0n9Fd6WOIh8ijg6HrbgMLO
 IC8y+a88z+9ARJ+TsDIIumkq9qVSAxQxYlRhActUoZA06xQkILrPk1UNqQrTTocMeweM
 NuOA==
X-Gm-Message-State: AC+VfDzG0hyWXYzUVlDGEI6h+GF9ofxYNZYTtRdeCT1oxIBv7rEpu3uf
 LT1yWKz1rQJVGu4YB/WDUeg=
X-Google-Smtp-Source: ACHHUZ45LJ8cqGG06H9+QKc3PJ4doA8GRiKsCZiMHAotNMISohVK1Qrf0nkc79vgdQ4/KnfmsWNQ1g==
X-Received: by 2002:a2e:b04c:0:b0:2b4:7d01:f16f with SMTP id
 d12-20020a2eb04c000000b002b47d01f16fmr5761929ljl.29.1687511279320; 
 Fri, 23 Jun 2023 02:07:59 -0700 (PDT)
Received: from smtpclient.apple (c188-150-165-235.bredband.tele2.se.
 [188.150.165.235]) by smtp.gmail.com with ESMTPSA id
 e17-20020a2e9851000000b002b331e241edsm1660649ljj.133.2023.06.23.02.07.58
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Fri, 23 Jun 2023 02:07:58 -0700 (PDT)
From: =?utf-8?Q?Mattias_Engdeg=C3=A5rd?= <mattias.engdegard@HIDDEN>
Content-Type: text/plain;
	charset=us-ascii
Content-Transfer-Encoding: quoted-printable
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.15\))
Subject: bug#64185: proposal for new function: copy-line
Message-Id: <4C83E2DA-FE5F-4191-88CD-7E70008C9892@HIDDEN>
Date: Fri, 23 Jun 2023 11:07:58 +0200
To: Juri Linkov <juri@HIDDEN>
X-Mailer: Apple Mail (2.3654.120.0.1.15)
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, me@HIDDEN,
 zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

>  'duplicate-dwim' duplicates the region if it is active.  If not, it
>  works like 'duplicate-line'.  An active rectangular region is
> -duplicated on its right-hand side.
> +duplicated on its right-hand side.  The new user option
> +'duplicate-line-final-position' specifies where to move point
> +after duplicating the line.

This makes it unclear to what extent the variable affects =
`duplicate-dwim`. (For some reason it only does so when the region is =
inactive, which doesn't seem right.)

And I agree that allowing any integer as value isn't necessary the best =
choice here. It's a false flexibility; nobody will ever set it to =
something other than 0, 1 or -1. Symbols would probably be better, for =
several reasons.

Finally, it's a bit surprising that this is even discussed for inclusion =
in Emacs 29 at this stage, given the raw state of the design. What about =
we do a proper job on master instead, instead of rushing a half-baked =
new feature into a branch that is already deep into pre-release?





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 23 Jun 2023 09:01:56 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 23 05:01:56 2023
Received: from localhost ([127.0.0.1]:37668 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCcfz-0005HO-Vh
	for submit <at> debbugs.gnu.org; Fri, 23 Jun 2023 05:01:56 -0400
Received: from mail-lj1-f170.google.com ([209.85.208.170]:49382)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <rpluim@HIDDEN>) id 1qCcfx-0005H9-I9
 for 64185 <at> debbugs.gnu.org; Fri, 23 Jun 2023 05:01:54 -0400
Received: by mail-lj1-f170.google.com with SMTP id
 38308e7fff4ca-2b466066950so6945471fa.2
 for <64185 <at> debbugs.gnu.org>; Fri, 23 Jun 2023 02:01:53 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20221208; t=1687510907; x=1690102907;
 h=content-transfer-encoding:mime-version:message-id:date:references
 :in-reply-to:subject:cc:to:from:from:to:cc:subject:date:message-id
 :reply-to; bh=sCGzNMykGVTFrslLW77sDgK8sTRMhkqCwduqA0un+WA=;
 b=NXdXWn6mwcS4BducarIpbY+SvSWDFUhL3ppdVTtt2PF3ateas1hPbx0FK1ud9Z5TJI
 3FTw/BlSHoFT8AizFXP0zm339+teq+0cEjtHK2aJZfcqgVsIKyFFPc+/HpCwuoU8gEf1
 bNinG4OpRg6lm7DG/VQY6U5E3PG3fTmj9a5M5Wne4htpH5T+gRDnPSlFEOTrc9tKGVWV
 CdyKPgZ2NaTipaOQtX8av11U/5JK6v4co3446mzNMmGs1X5qk2sF26eaK0uei69GKPiE
 JaAEvSD6dPfeCcGb2X8UBnpyz52wU6FyFn4KQ2ENEyC4fTSrKbNQUJflNrzeMinicNhK
 D3nw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20221208; t=1687510907; x=1690102907;
 h=content-transfer-encoding:mime-version:message-id:date:references
 :in-reply-to:subject:cc:to:from:x-gm-message-state:from:to:cc
 :subject:date:message-id:reply-to;
 bh=sCGzNMykGVTFrslLW77sDgK8sTRMhkqCwduqA0un+WA=;
 b=H9aKKEj8Vd+LcL14HOm1DywtGcv4D2dcf9dhM12LYmVzUYmB0OGwzZgtEIuqJ3Jw6j
 shDE8CTTUmpkNWldKrYHia6hu4w2MrkZ6PBNTRZq3Dxky1ybA713hxIVHZepCVS/SxEY
 FqOq2kWsuQVCzL57xj7lz212zKaN9DzbkldafFEYl15MxlSjnEgBAnVrqOhs7jK38HWT
 1leIDFaEBPtqEPW1NgA9/CpftkolsCSHxrx4K7UCQ8eo/wycpH9u4PPT/vAq/s3QfFd5
 zdRbIC6PMnmReRm0X4/ciBh7AGtcF6mkQigGA3sstGf4Imd3+ZO8S+FUxNoYrnHZymNc
 riUg==
X-Gm-Message-State: AC+VfDyuuE97NhqKsX/PQh1KoV3ghLrZN3eoa/NJa7/0xNU84hAWN9Ax
 edFqACLy27h9m5Mo5ac6zeY=
X-Google-Smtp-Source: ACHHUZ4aRBBd+etffCDo1S1gvB0+5yGl1Sg/hp3lpAnTkGb4dVTYD8dDZMthipwFMXou51pm6lUlww==
X-Received: by 2002:a2e:8650:0:b0:2b5:9a93:ad14 with SMTP id
 i16-20020a2e8650000000b002b59a93ad14mr772094ljj.12.1687510906813; 
 Fri, 23 Jun 2023 02:01:46 -0700 (PDT)
Received: from rltb ([82.66.8.55]) by smtp.gmail.com with ESMTPSA id
 n12-20020a1c720c000000b003f90b58df65sm1711272wmc.29.2023.06.23.02.01.45
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 23 Jun 2023 02:01:46 -0700 (PDT)
From: Robert Pluim <rpluim@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#64185: proposal for new function: copy-line
In-Reply-To: <83ttuy1w95.fsf@HIDDEN> (Eli Zaretskii's message of "Fri, 23 Jun
 2023 10:19:18 +0300")
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN> <837cry73z9.fsf@HIDDEN>
 <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
 <838rcc3wzs.fsf@HIDDEN> <86ttv0ynyk.fsf@HIDDEN>
 <83mt0r31n4.fsf@HIDDEN> <86a5wrxv9z.fsf@HIDDEN>
 <83edm32xy9.fsf@HIDDEN> <86wmzvwecw.fsf@HIDDEN>
 <87sfaiejuf.fsf@HIDDEN> <83ttuy1w95.fsf@HIDDEN>
Date: Fri, 23 Jun 2023 11:01:45 +0200
Message-ID: <87o7l6eeme.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN, zkanfer@HIDDEN,
 juri@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

>>>>> On Fri, 23 Jun 2023 10:19:18 +0300, Eli Zaretskii <eliz@HIDDEN> said:

    >> The first thing that springs to mind here is "where on the line is
    >> point placed?". At the beginning, end, same column as when
    >> duplicate-line was invoked? (I know I could just read the code, but
    >> the caffeine hasn=CA=BCt kicked in yet :-))

    Eli> This is a NEWS entry, it doesn't have to provide such details.  The
    Eli> doc string should, so if these details are missing from the doc
    Eli> string, it should be improved to include them.

The doc string doesn=CA=BCt provide those details

Robert
--=20




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 23 Jun 2023 07:19:15 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 23 03:19:15 2023
Received: from localhost ([127.0.0.1]:37378 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCb4c-00025t-KR
	for submit <at> debbugs.gnu.org; Fri, 23 Jun 2023 03:19:15 -0400
Received: from eggs.gnu.org ([209.51.188.92]:37936)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1qCb4a-00025g-Vv
 for 64185 <at> debbugs.gnu.org; Fri, 23 Jun 2023 03:19:13 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qCb4U-0005Uj-Kn; Fri, 23 Jun 2023 03:19:06 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=knEVr7vVGxcmhHtlnhuqdKIxBWh3nr9Bd/dy88PUl5I=; b=YPtM3+5w8TFJtsdFeE5s
 LbKScx/KUI0q9DSy/06EF08CQVkaI2TnrIRVi4CV/E0UtaucuPbh1MmEYKO3Az945ElTdAgBM788L
 ESyAKoQVzji5bv+5AuxO+ZWsXDF+ZpGezel7SoT5V6AbZIzB2gQedWbqA5ldzg6Sv8urxxUxjiGx7
 Xr5TC4tMpchADzS/sJMfRntxZ8gONgrPpbKFd6zV9Lh032t/Lne9TL2ycEJYCr3We03xgQjXMIcvQ
 UeU0SC90EAZbfeH091wG+Re8leU9+FKeON/v1K+6zeaalqlIaQ265R3xoHgTLz1ljXN6h299N32Vm
 VrELe80xnhaKrg==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qCb4S-0005SR-KQ; Fri, 23 Jun 2023 03:19:05 -0400
Date: Fri, 23 Jun 2023 10:19:18 +0300
Message-Id: <83ttuy1w95.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Robert Pluim <rpluim@HIDDEN>
In-Reply-To: <87sfaiejuf.fsf@HIDDEN> (message from Robert Pluim on Fri, 23
 Jun 2023 09:08:56 +0200)
Subject: Re: bug#64185: proposal for new function: copy-line
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN> <837cry73z9.fsf@HIDDEN>
 <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
 <838rcc3wzs.fsf@HIDDEN> <86ttv0ynyk.fsf@HIDDEN>
 <83mt0r31n4.fsf@HIDDEN> <86a5wrxv9z.fsf@HIDDEN>
 <83edm32xy9.fsf@HIDDEN> <86wmzvwecw.fsf@HIDDEN>
 <87sfaiejuf.fsf@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN, zkanfer@HIDDEN,
 juri@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Robert Pluim <rpluim@HIDDEN>
> Cc: Eli Zaretskii <eliz@HIDDEN>,  64185 <at> debbugs.gnu.org,
>   me@HIDDEN,  zkanfer@HIDDEN
> Date: Fri, 23 Jun 2023 09:08:56 +0200
> 
> >>>>> On Thu, 22 Jun 2023 21:17:51 +0300, Juri Linkov <juri@HIDDEN> said:
> 
>     Juri> diff --git a/etc/NEWS b/etc/NEWS
>     Juri> index ca0d602e9ad..aa3b758a815 100644
>     Juri> --- a/etc/NEWS
>     Juri> +++ b/etc/NEWS
>     Juri> @@ -696,7 +696,9 @@ between these modes while the user is inputting a command by hitting
>     Juri>  'duplicate-line' duplicates the current line the specified number of times.
>     Juri>  'duplicate-dwim' duplicates the region if it is active.  If not, it
>     Juri>  works like 'duplicate-line'.  An active rectangular region is
>     Juri> -duplicated on its right-hand side.
>     Juri> +duplicated on its right-hand side.  The new user option
>     Juri> +'duplicate-line-final-position' specifies where to move point
>     Juri> +after duplicating the line.
> 
> The first thing that springs to mind here is "where on the line is
> point placed?". At the beginning, end, same column as when
> duplicate-line was invoked? (I know I could just read the code, but
> the caffeine hasnʼt kicked in yet :-))

This is a NEWS entry, it doesn't have to provide such details.  The
doc string should, so if these details are missing from the doc
string, it should be improved to include them.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 23 Jun 2023 07:09:06 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 23 03:09:06 2023
Received: from localhost ([127.0.0.1]:37362 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCaun-0001ou-Sf
	for submit <at> debbugs.gnu.org; Fri, 23 Jun 2023 03:09:06 -0400
Received: from mail-wm1-f47.google.com ([209.85.128.47]:49638)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <rpluim@HIDDEN>) id 1qCaum-0001oN-2i
 for 64185 <at> debbugs.gnu.org; Fri, 23 Jun 2023 03:09:04 -0400
Received: by mail-wm1-f47.google.com with SMTP id
 5b1f17b1804b1-3fa74d06d72so3608725e9.3
 for <64185 <at> debbugs.gnu.org>; Fri, 23 Jun 2023 00:09:04 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20221208; t=1687504138; x=1690096138;
 h=content-transfer-encoding:mime-version:message-id:date:references
 :in-reply-to:subject:cc:to:from:from:to:cc:subject:date:message-id
 :reply-to; bh=OjsY1SjakBwkeVNDO7SkiUDOIpU7moUE8b8kx5F0ZY4=;
 b=X2T14cz3gtW7hbkcreoIO+2WolbSjsAeZPqIbJPNUCN/Qy8ELS1lbzqm5SCblTRASf
 KbMjUWlbUZU52XtVb1zBZVjRk51aWXJTjrrQHXXrFbAjA2rvktLa8rdI0m0fX/T/VaiW
 pP84aia75gAxVSgbKn65CWTb/SSBCRCaZS7uuFHgtuIZJfvs9OTdKT8FMWub2YOOtTST
 7263VcfBBobjybyRS+7MU6YeVyswXGPl/1AGKHvqxQqo+pPmY5oU/u+1dbZ4/StQribh
 bulo56sumW94iK3kP/+MHPN/BnuXOLVg0oFveBXGXiIkrgOv96ZFMmXYErMaUyOGK1aC
 RLGQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20221208; t=1687504138; x=1690096138;
 h=content-transfer-encoding:mime-version:message-id:date:references
 :in-reply-to:subject:cc:to:from:x-gm-message-state:from:to:cc
 :subject:date:message-id:reply-to;
 bh=OjsY1SjakBwkeVNDO7SkiUDOIpU7moUE8b8kx5F0ZY4=;
 b=PcnZkKtfIxbWvjNoApAnm/0jJyJsf64xP2R4drMQwJLBnQy4Si1IciaP8MMFC1+Wfb
 ueZMlZRJ1ltYvY8yr7jlWvIEbc8x364i0yw9OxzFN4Eo8BhdX7ex6jfLGKAxgwBO5AAc
 mwNQ/X1Wquz5YMgRa3ibmQvKns8cKNghgB4LerPnZBEwGAWq7cF3sbW97f8UQXQcThTJ
 jaijXjFs1u3DLTNPoYHHcfF9b/3BHPgF4JAl7mGuze8vfZSbYbNl+uQ8+VOIattneTTH
 IVBn7TBA2vnJQHxtBkpqi4qPsZKD28Y6AEzIOCNm3+NjRvATz6vwxcZ6m2DaYum55w2K
 /CUw==
X-Gm-Message-State: AC+VfDxgPZ5gahhUO7AILQyePo6MwIX7nUtvKDw66b7k5fO4ZBQtL77/
 ERNXPJ+DivFJ2ftZovSbRDjsfiYflZI=
X-Google-Smtp-Source: ACHHUZ4wVaCOWOyWVSEFZ7yWvS3Fe10UGRTxHSfl9HToZYUwMineshUtKCTMRLHUbQRJVY2xdPoQcA==
X-Received: by 2002:adf:fc47:0:b0:30f:ca87:8e09 with SMTP id
 e7-20020adffc47000000b0030fca878e09mr3071290wrs.30.1687504137869; 
 Fri, 23 Jun 2023 00:08:57 -0700 (PDT)
Received: from rltb ([82.66.8.55]) by smtp.gmail.com with ESMTPSA id
 q6-20020adff506000000b00307c8d6b4a0sm8759666wro.26.2023.06.23.00.08.56
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 23 Jun 2023 00:08:57 -0700 (PDT)
From: Robert Pluim <rpluim@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
Subject: Re: bug#64185: proposal for new function: copy-line
In-Reply-To: <86wmzvwecw.fsf@HIDDEN> (Juri Linkov's message of "Thu, 
 22 Jun 2023 21:17:51 +0300")
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN> <837cry73z9.fsf@HIDDEN>
 <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
 <838rcc3wzs.fsf@HIDDEN> <86ttv0ynyk.fsf@HIDDEN>
 <83mt0r31n4.fsf@HIDDEN> <86a5wrxv9z.fsf@HIDDEN>
 <83edm32xy9.fsf@HIDDEN> <86wmzvwecw.fsf@HIDDEN>
Date: Fri, 23 Jun 2023 09:08:56 +0200
Message-ID: <87sfaiejuf.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, me@HIDDEN,
 zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

>>>>> On Thu, 22 Jun 2023 21:17:51 +0300, Juri Linkov <juri@HIDDEN> sai=
d:

    Juri> diff --git a/etc/NEWS b/etc/NEWS
    Juri> index ca0d602e9ad..aa3b758a815 100644
    Juri> --- a/etc/NEWS
    Juri> +++ b/etc/NEWS
    Juri> @@ -696,7 +696,9 @@ between these modes while the user is inputti=
ng a command by hitting
    Juri>  'duplicate-line' duplicates the current line the specified numbe=
r of times.
    Juri>  'duplicate-dwim' duplicates the region if it is active.  If not,=
 it
    Juri>  works like 'duplicate-line'.  An active rectangular region is
    Juri> -duplicated on its right-hand side.
    Juri> +duplicated on its right-hand side.  The new user option
    Juri> +'duplicate-line-final-position' specifies where to move point
    Juri> +after duplicating the line.

The first thing that springs to mind here is "where on the line is
point placed?". At the beginning, end, same column as when
duplicate-line was invoked? (I know I could just read the code, but
the caffeine hasn=CA=BCt kicked in yet :-))

Robert
--=20




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 23 Jun 2023 05:56:27 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 23 01:56:27 2023
Received: from localhost ([127.0.0.1]:37229 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCZmV-0005k0-7a
	for submit <at> debbugs.gnu.org; Fri, 23 Jun 2023 01:56:27 -0400
Received: from eggs.gnu.org ([209.51.188.92]:34836)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1qCZmU-0005jm-3y
 for 64185 <at> debbugs.gnu.org; Fri, 23 Jun 2023 01:56:26 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qCZmN-0006PZ-Qk; Fri, 23 Jun 2023 01:56:19 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=WTaijyp3zrRGY5DCDS05R8feHJolJRzVTxsDX76rCKI=; b=B4KcH7Qy34Sc
 6ybIRchksvbpAbB+jznbe6DSZp74WnjIbKPWp8SgbEnrPRw4yUXAHtvjYSxY0enp1EEqDWBwM26Qq
 PycnX+5oVSwotAeKkuHygiGRAwI3KHbVkSAl+6U5UCVrlFvRhcyESXWTJP+JOZ68oA+9Y6QpNBJ1g
 wywtyIOF2wHjkkYSh1/qC10NlAKev2cvGeJlyOWXE9DwsyLjEcVO6CY+MusunozYTUlSAlpJpnJrj
 75pope9moLgChEdqrWwa1jkKmWpZvnu88aYwfQFAAuQ2KTDYLgQWPrdtlIpM53WnR/qew6GFt41DY
 ZuOI8ObrVfpSe9xH/QEglw==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qCZmN-0003s7-A7; Fri, 23 Jun 2023 01:56:19 -0400
Date: Fri, 23 Jun 2023 08:56:32 +0300
Message-Id: <834jmy3enj.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Zachary Kanfer <zkanfer@HIDDEN>
In-Reply-To: <CAFXT+RNZjMyW8QUmmaXbhBo-Ptf901_NGrFr3Qb+hsCN074x8A@HIDDEN>
 (message from Zachary Kanfer on Fri, 23 Jun 2023 01:46:27 -0400)
Subject: Re: bug#64185: proposal for new function: copy-line
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN> <837cry73z9.fsf@HIDDEN>
 <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
 <838rcc3wzs.fsf@HIDDEN> <86ttv0ynyk.fsf@HIDDEN>
 <83mt0r31n4.fsf@HIDDEN>
 <86a5wrxv9z.fsf@HIDDEN> <83edm32xy9.fsf@HIDDEN>
 <86wmzvwecw.fsf@HIDDEN> <83a5wr2vtp.fsf@HIDDEN>
 <CAFXT+RNZjMyW8QUmmaXbhBo-Ptf901_NGrFr3Qb+hsCN074x8A@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN, juri@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Zachary Kanfer <zkanfer@HIDDEN>
> Date: Fri, 23 Jun 2023 01:46:27 -0400
> Cc: Juri Linkov <juri@HIDDEN>, 64185 <at> debbugs.gnu.org, me@HIDDEN
> 
> Is there a standard to use numbers as the values, rather than, say, symbols? It seems more readable
> to look at an option of '(old new last), for example, rather than '(-1 0 1).

Numbers are much easier for users to use as values of options, so we
should prefer them when they do the job.  A number can also express
more than just those 3 possibilities, so it's more flexible in this
case.

> I also like the added tests!

That's always welcome, TIA.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 23 Jun 2023 05:46:47 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 23 01:46:47 2023
Received: from localhost ([127.0.0.1]:37183 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCZd8-0005PE-LW
	for submit <at> debbugs.gnu.org; Fri, 23 Jun 2023 01:46:47 -0400
Received: from mail-oo1-f54.google.com ([209.85.161.54]:58874)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <zkanfer@HIDDEN>) id 1qCZd6-0005P1-Lf
 for 64185 <at> debbugs.gnu.org; Fri, 23 Jun 2023 01:46:45 -0400
Received: by mail-oo1-f54.google.com with SMTP id
 006d021491bc7-561403f7225so200779eaf.1
 for <64185 <at> debbugs.gnu.org>; Thu, 22 Jun 2023 22:46:44 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20221208; t=1687499199; x=1690091199;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=1ImPmvvmHr7B/eabfhAWp25BcyVVMZuIRCfe8UKWPFw=;
 b=a+Zh6l7L1Qquc7Luu7FmCOnNw/xdkBQx1J+C7jVlyz/lYCunPRYY5P6w3HcVgtfT/o
 ZUPDKd40jgz50wHqfYkhdypsD2NgYaWcWxltVmz41xGLMspk0q17WObm52ps46yMr9fB
 ZtHVsnJNFmlR4NjAMCNX+N6zmYFqH2Ev9hNByaoKkRjMcMUX3spuDEkjT25OBgaUihZ5
 b9Gp7LxN3T58quvwRf21YyuCUcYmYxccRPzNOzuk27IYm5+uUJtzRj8JOKhYUK5LCTsU
 uAL5NBda3rbnLXfOte+hFwJ6lf7x5yyuugXAvpAAir9w7b+EA1efiGpQe8353l0GPOs/
 rLDw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20221208; t=1687499199; x=1690091199;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=1ImPmvvmHr7B/eabfhAWp25BcyVVMZuIRCfe8UKWPFw=;
 b=Wj564MYEo/YWzmfORMRnGnD2k10ugHJkLZOKsJEoGV6Dv1QK2Y9r2ZWCmVoh22i4Ah
 hGl89OPN8LZVzW7eGEnARkITVgfxwpI7R7lTSEsbh2l99cUXfdDNc2J5YGYDRx6pW3NQ
 kh6UqAkDinXB9V4V0JsOGjb5pGSlN/yerI5mUCipVSLdLeVFUW5/glxU+MYho4feRP4J
 wH4ihoapOfbYgmYVMCC1kvd+o8/4JW1Uay7gMDAJJ6kdvhLTK4aGgCycMOUSlkKKNPwl
 i88V1GV1Fv0it+h2CTvTqCP/u9W20mp1K9ZKavlPGS98esgm7u9lxryp7/M7MaAoXcRy
 Xuqg==
X-Gm-Message-State: AC+VfDyGZiJyYSZYt+R8re0Q70eaN9CjegXvaUNF+2xFn51nqYvdG2lI
 Hv8MH/kg05Oo126te5OVu5FJ4b+pJMXf85mfTuE=
X-Google-Smtp-Source: ACHHUZ6HdZ1vq16AmzYL+4ML6izdnA0UwvDOi2Qp+1lNoPylgae8Lo9aG/DTJVDK6rcqan+YAueMqaFkbE95L03uK3w=
X-Received: by 2002:a4a:e6cd:0:b0:55d:beb5:c789 with SMTP id
 v13-20020a4ae6cd000000b0055dbeb5c789mr11694198oot.0.1687499198579; Thu, 22
 Jun 2023 22:46:38 -0700 (PDT)
MIME-Version: 1.0
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN> <837cry73z9.fsf@HIDDEN>
 <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
 <838rcc3wzs.fsf@HIDDEN> <86ttv0ynyk.fsf@HIDDEN>
 <83mt0r31n4.fsf@HIDDEN>
 <86a5wrxv9z.fsf@HIDDEN> <83edm32xy9.fsf@HIDDEN>
 <86wmzvwecw.fsf@HIDDEN> <83a5wr2vtp.fsf@HIDDEN>
In-Reply-To: <83a5wr2vtp.fsf@HIDDEN>
From: Zachary Kanfer <zkanfer@HIDDEN>
Date: Fri, 23 Jun 2023 01:46:27 -0400
Message-ID: <CAFXT+RNZjMyW8QUmmaXbhBo-Ptf901_NGrFr3Qb+hsCN074x8A@HIDDEN>
Subject: Re: bug#64185: proposal for new function: copy-line
To: Eli Zaretskii <eliz@HIDDEN>
Content-Type: multipart/alternative; boundary="0000000000004a47a505fec58628"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN, Juri Linkov <juri@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--0000000000004a47a505fec58628
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

The option looks really nice to me!

Is there a standard to use numbers as the values, rather than, say,
symbols? It seems more readable to look at an option of '(old new last),
for example, rather than '(-1 0 1).

I also like the added tests!

On Thu, Jun 22, 2023 at 2:30=E2=80=AFPM Eli Zaretskii <eliz@HIDDEN> wrote:

> > From: Juri Linkov <juri@HIDDEN>
> > Cc: zkanfer@HIDDEN,  64185 <at> debbugs.gnu.org,  me@HIDDEN
> > Date: Thu, 22 Jun 2023 21:17:51 +0300
> >
> > Unless someone has an idea for a shorter name that is still descriptive=
,
> > here is the final patch for emacs-29:
>
> LGTM, thanks.  But let's wait for a day or two to give others a chance
> to comment.
>

--0000000000004a47a505fec58628
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>The option looks really nice to me!</div><div><br></d=
iv><div>Is there a standard to use numbers as the values, rather than, say,=
 symbols? It seems more readable to look at an option of &#39;(old new last=
), for example, rather than &#39;(-1 0 1).</div><div><br></div><div>I also =
like the added tests!<br></div></div><br><div class=3D"gmail_quote"><div di=
r=3D"ltr" class=3D"gmail_attr">On Thu, Jun 22, 2023 at 2:30=E2=80=AFPM Eli =
Zaretskii &lt;<a href=3D"mailto:eliz@HIDDEN" target=3D"_blank">eliz@HIDDEN=
g</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin=
:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"=
>&gt; From: Juri Linkov &lt;<a href=3D"mailto:juri@HIDDEN" target=3D"_b=
lank">juri@HIDDEN</a>&gt;<br>
&gt; Cc: <a href=3D"mailto:zkanfer@HIDDEN" target=3D"_blank">zkanfer@gma=
il.com</a>,=C2=A0 <a href=3D"mailto:64185 <at> debbugs.gnu.org" target=3D"_blank=
">64185 <at> debbugs.gnu.org</a>,=C2=A0 <a href=3D"mailto:me@HIDDEN" tar=
get=3D"_blank">me@HIDDEN</a><br>
&gt; Date: Thu, 22 Jun 2023 21:17:51 +0300<br>
&gt; <br>
&gt; Unless someone has an idea for a shorter name that is still descriptiv=
e,<br>
&gt; here is the final patch for emacs-29:<br>
<br>
LGTM, thanks.=C2=A0 But let&#39;s wait for a day or two to give others a ch=
ance<br>
to comment.<br>
</blockquote></div>

--0000000000004a47a505fec58628--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 22 Jun 2023 19:05:57 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 22 15:05:57 2023
Received: from localhost ([127.0.0.1]:36764 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCPcz-0002qG-0x
	for submit <at> debbugs.gnu.org; Thu, 22 Jun 2023 15:05:57 -0400
Received: from mx0b-00069f02.pphosted.com ([205.220.177.32]:44984)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <drew.adams@HIDDEN>) id 1qCPcx-0002q7-6q
 for 64185 <at> debbugs.gnu.org; Thu, 22 Jun 2023 15:05:56 -0400
Received: from pps.filterd (m0246630.ppops.net [127.0.0.1])
 by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 35MI6jhE014088; Thu, 22 Jun 2023 19:05:54 GMT
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com;
 h=from : to : cc :
 subject : date : message-id : references : in-reply-to : content-type :
 content-transfer-encoding : mime-version; s=corp-2023-03-30;
 bh=8ZDDgXa5+9s3QdxGZeXwg55vbMG6MJGlKNc+0B5JThg=;
 b=kxBovhIMUArzpdltKstT97b1q86bvMXJzYWF7WfC9YlUAnER36AKiS+q/89ybZ7CEne+
 p4cc62bSz55iuPLNGwm/GrbincR6VLfHZ/9Pz24ayqRAYFEVd00DIRmqqN3poR7fwZgp
 Js9nFvEU0DAJRLmtwMl7USXZyB3j588LHaC0XAJs6v6JuOwelprqqYoQt1ZhXU6pGHjs
 +ME3Dlhf0J2wJ4nj8aWITnbwjIevH1IpJ7iA7bSZBeaoRpX3r+YMxgp/z5RGkcVamP26
 1NGvtcidwnrG8eBaxjNAuJPHiGFfClco3xm/BRafd9vlE9EBTDkPD6iQYCct+zcl9AMI 3w== 
Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com
 (iadpaimrmta03.appoci.oracle.com [130.35.103.27])
 by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3r938dthv4-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Thu, 22 Jun 2023 19:05:54 +0000
Received: from pps.filterd
 (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1])
 by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19)
 with ESMTP id 35MIxkc0005799; Thu, 22 Jun 2023 19:05:53 GMT
Received: from nam12-dm6-obe.outbound.protection.outlook.com
 (mail-dm6nam12lp2177.outbound.protection.outlook.com [104.47.59.177])
 by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id
 3r9397sejq-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Thu, 22 Jun 2023 19:05:53 +0000
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FIRECVjXePN0V5Z9prVYf6N6MQQ8q3UiVpAApnHazV6jjApVbLQeXlDpxSmV4MSuU+xOIhlvsX3dDb2pDsXVzg7UI9jC93Jjwa1icAxAfABZSzNnGSsah/57m0SBUId6RsUI6W2WI8+icgNE6Cvc2B/e5baZSxoPfDPNMi4vP2bWbsPKFf17n8VM4pAhKQYy/dqAn3c4CqElNs8Ob/ZCrYhbOUICq4q6fu7oTwLnoyknUeTpRAMupCANMQuAeES35fhwD1kxzV0wAlJGJ50k0dVXkNv/9gLfDkJPX9LQD4kLYtWjQFn8BpsvaNAdKoY0tPLEPeTLNrp6+Rz4Cpotew==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8ZDDgXa5+9s3QdxGZeXwg55vbMG6MJGlKNc+0B5JThg=;
 b=OfMhI0Bdo0EqeWmDpeG2vPxQZyou9CLBTSssmYD4DtFxLq/GzBzf1ipKAz+eV5u5wKGu8KT9wro8eFBXoXlh+ZxmXfQg9cJFPHHz6UwXgU5IdiHun/lM5ysq0cjnD/zsDKWCECQupkml37FpzRDxfBILTThY70u1DekzEFa6bPuHYXulkA5go4hqZMqVDPgmTEpcHczNoQSDGEFM9sfEfXuHk/eFgF7kdY7OQfAJL9TdiJtdP9Li7P5rfh+/BKu+X4Z+Dt1kQ4+9pKxNJCokfHVvV0ViASiaaktiZ4RNppP6iXSOUo+62jRUpNU9CGmtbjU52j6DoM7p6Tq3RFXwOw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com;
 dkim=pass header.d=oracle.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8ZDDgXa5+9s3QdxGZeXwg55vbMG6MJGlKNc+0B5JThg=;
 b=Iqbf1Bt+JxkSwkfA5OyjYreviTIRDhEizxGSvOm8mAIeT0T2FrxeM+5QcP2eAoboqOzscJ8LtRYENdCtRpB9q14hGyEGYnUOdHmwgvskY3q4hAP8bBUl/y6gmmBy7MxbZqa93U7wKHu0HL5OznY5ot+laToNWcDNQan2ti/+jDs=
Received: from SJ0PR10MB5488.namprd10.prod.outlook.com (2603:10b6:a03:37e::19)
 by DS0PR10MB7090.namprd10.prod.outlook.com (2603:10b6:8:141::15) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 22 Jun
 2023 19:05:51 +0000
Received: from SJ0PR10MB5488.namprd10.prod.outlook.com
 ([fe80::22c4:9389:291e:aeae]) by SJ0PR10MB5488.namprd10.prod.outlook.com
 ([fe80::22c4:9389:291e:aeae%6]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023
 19:05:51 +0000
From: Drew Adams <drew.adams@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
Subject: RE: [External] : bug#64185: proposal for new function: copy-line
Thread-Topic: [External] : bug#64185: proposal for new function: copy-line
Thread-Index: AQHZpTrbOpxDmgV5xEu4hftyOMEx7K+XLB4A
Date: Thu, 22 Jun 2023 19:05:51 +0000
Message-ID: <SJ0PR10MB5488AF734B7F57A4854623D8F322A@HIDDEN>
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN> <837cry73z9.fsf@HIDDEN>
 <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
 <838rcc3wzs.fsf@HIDDEN> <86ttv0ynyk.fsf@HIDDEN>
 <83mt0r31n4.fsf@HIDDEN> <86a5wrxv9z.fsf@HIDDEN>
 <83edm32xy9.fsf@HIDDEN>
 <SJ0PR10MB5488F9BAEB51AC8F9B9B374FF322A@HIDDEN>
 <86legbwdtf.fsf@HIDDEN>
 <SJ0PR10MB5488776062FC2959D0985007F322A@HIDDEN>
 <868rcbwcrw.fsf@HIDDEN>
In-Reply-To: <868rcbwcrw.fsf@HIDDEN>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: SJ0PR10MB5488:EE_|DS0PR10MB7090:EE_
x-ms-office365-filtering-correlation-id: e882accf-89d1-4c52-223b-08db7353b28f
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 37rGcYiMScqy8TN7s4/sqAjJfF49vnQDt0+lpuuZLIgWJEVuFW0RgB8wsvBWLT5NuERFLFTuqQKdvqrD5+beL7/U3m/7VBKiBd1pg5VhGDq2y3XDoNjjZRZhHvSlKvcLEDwte4U1s62RGOjL9vYCNLkHN2XUvXoR1Xl6+EWc4FxdnE9K9M0KMbstBNJ8Jf+Z53VVQOwaty2REHkdp3e4EcYOmuibd8erqyiDUSrEdtowHi51MIChDL/XvtMjlrmI4b5y6eThZjCp/vblYu0SGx49g+8+rYg+oHYdeizifSOow///rnOmls2OaR7uRm+gP8hf+JDanmysZYR2EAcdpW8AcOtvcbFBaTdvA8HtzDWfE1+mnou+gBwnWhjqlSTS+JgTw//CGUJareNxBjUOxkCIuU3eaQuV5JKY9gP77YRnsDCBvqB60TpVmsn8eedhZpjO6cWoJAFkzn8pIMBehLqxwQc8JWX6g1Pf2zkYmGYxJ+IXFtF+xSNHdV3Rf3FV5zt78m7ATiUDbd20+9yLj8ooAG0UmP0Kom92jlAFtlVIgNcvQRvtizoAgwZRe0U/GoanXTM1in7R5D7QB279wufOL0sZcXxFxrOzFNGu4EgV/49wzZA7AuN30e5i1M6t
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:SJ0PR10MB5488.namprd10.prod.outlook.com; PTR:; CAT:NONE;
 SFS:(13230028)(396003)(346002)(136003)(376002)(39860400002)(366004)(451199021)(9686003)(122000001)(38100700002)(26005)(6506007)(186003)(55016003)(44832011)(4744005)(8936002)(41300700001)(8676002)(5660300002)(52536014)(33656002)(71200400001)(38070700005)(66946007)(7696005)(64756008)(4326008)(478600001)(6916009)(66446008)(66476007)(66556008)(76116006)(86362001)(316002)(54906003)(2906002);
 DIR:OUT; SFP:1101; 
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?rijTzpPsxMCYPA1BBTs9+uSVO1xf8Y1iMSFA2JMMzUoxMksYR3BxQ9Oo+XuX?=
 =?us-ascii?Q?ZP2XEViXZ2qniRIc7hb8EA5EURLJO9ycVdPc3Lrg7WKlZpbEqylSHAynJwBj?=
 =?us-ascii?Q?lXC5u81lfzKCl1iI5OaA4WEEbfAS9/XIw39mkpfjeZ3vez/g2vmOsJ5gurDs?=
 =?us-ascii?Q?1dYubpBAtTklQWo1fonymy2QFPUXvMnNRzh/mqFAfxFpFLCT/yBjOmBeCOnu?=
 =?us-ascii?Q?hYxE1Gd/fM30WmFV5xsVgP0LkyysYIREaD2TxcweU5SEwtxTG4l5olno2e3J?=
 =?us-ascii?Q?oQFT8oM0A5G84DTC1HCPHLG+Isx5s6BQXce6vMDMo6kKgvMS9rVihuizxa0L?=
 =?us-ascii?Q?lORoks5baHsQbBtaDZIbfJ6Zx+FW20V4qSAxJaE/TnVimbXW8xldIvzHLJ0o?=
 =?us-ascii?Q?qBb13TIkl6yZXgEoWizktt2ehRXxHTeXP4Lf8csq2OaBFdBxivTLlmEPiiHe?=
 =?us-ascii?Q?KGGZC4mrk+TRXnzH7dkB3sVjNrNmpQD1oGMLhs261v1QowvCXeVcLun09CtO?=
 =?us-ascii?Q?DeOFoEbEWXjAUT/QL/b5DuILPbgkY1pPuLP5nyFfneULquT7nJVatMFuAR+B?=
 =?us-ascii?Q?+FY0O3jjue72tMg4QWrmGm2rX51VvJbByYlqMdlnfkVOZWatjPUtXM8VtPy2?=
 =?us-ascii?Q?4ngx+M0F9LsMRiong0dR8DQpONc5bvCBMOaaWhE6qLSRZpyBH3rhSVRzan/0?=
 =?us-ascii?Q?F+j58z0c5uPM/KyFKzC5ZkzydipJccG0Zj+qUFFBTs9F8YjJNL3ADxVw+L6A?=
 =?us-ascii?Q?aEisL5/upW1VHw5OHJ33X8U1df/Os4Y3zvzaGarVcWNHAJh3VJLqWDW5hFSI?=
 =?us-ascii?Q?g7xjMmLBDLEWVjuIW0DQFGsyCLjcrn3+0xquCB+PXB3xiM8Q/MgJYOEe3/wE?=
 =?us-ascii?Q?isECppoc7t2HP5OdJbs5kED4uZ8DRZZFckNePVp8z7HSeDccVO6U36XkbMVo?=
 =?us-ascii?Q?0MuPjRjpS7J2WcS/FZW8B/wgP0IVR5QPO74+0D8rmJaSsam+m8dafzeXhiIB?=
 =?us-ascii?Q?0Go/JP1oPdnZp7vQSBeEtbtDE5aEJyOG79K8g5ZLmt4kCXDAeCUUyMLUxaWR?=
 =?us-ascii?Q?+PDOBr3LbfBe6hdaxrWo6/zJ0lq+YYfg9oIYCjG0A6hlrTWME66eHMxJUQSN?=
 =?us-ascii?Q?DceCzo7JI4Z+PLYHnUhT8NvdgwMSUNXPd1NBHXgFmzZbYCoidzrAXg3CWuLT?=
 =?us-ascii?Q?+zapvusIboTN/MfM42P8r4HT+RpU5/ZeKNO0HYmCRQCuuTv8Y+CTTWozcygC?=
 =?us-ascii?Q?xXXaDQ2TbfS7QqOZk6VK3YNogUu+MH1BH+yMZCqA+mtAV4hVz0GrYLeSELbD?=
 =?us-ascii?Q?1U4b0JolkKMF1uYMi5kZN5743sXgaMtHZDC3gubWIKn6A4apV01fjZH4juOp?=
 =?us-ascii?Q?ozTPNnlaDHgMYepar1spkZnG2LEOikfM/JexMbD9/mRMMl23ksY0sjNhZtVN?=
 =?us-ascii?Q?Eu7KDSwmx2oPT+Ak8nbYBe4fLgrE4DakswbWsSNUVw0AIr3lfs9oTV8RkZcj?=
 =?us-ascii?Q?PRcU4EWMDUjsSrkPAV5qtBF3F7K59otDG5VPrFUardyJe1j+h/6wHL1V/ijZ?=
 =?us-ascii?Q?mK6ZTLyy9c0H6eS9TZZ0utzzLMEvoWzyLmTtgyC1?=
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: qknHi/mbPiZitGimYZtYHQ0fdVBu4ShU1McERimOX9Soe7GNZ87sJluqC2RFcBj9nuzqi/UBKK407KdvHfOlkb2Ozvxx3BJv8GLgMTbSBJVPcDSf8PxhkWxM5HJrerd7YTuJgYVarTUK+wXwMjDcGYDJt+5L8hXlsAMsDn8Tcty92xe5cJa/yAzu7w87+Jlm1f0IdIssoGoz0QNfZgTOC5MXqor3X7UfSZIPBrdG/4afVLt7RqtdSfW9x4Iu2UaJyh0oS56DyrlSuX4gGdSWtBeEdSiPOejmSJaMVshyItkGlj7uieAR2XkbcfcPSye23WzlzJY59hPS3gmqbys2xIUnen1m+UNCtjiSYMho38MbUOk/smg8u41n5nTl102pZBnaPtW7qxGisuNwmkQMxAhPH0e9qf7xoM+ppN7GXYqHywHJsG1wg34I6WHYG2hmkITlJI35XGJ/2wG7b8PFeL3dNHhH9WjD/aYf0CynvP7s752Gt1SdwHviL9GAjkBKiH6uU932Pa5X9ShGdKZE2eEfR2NFrFX6M1Szt8Tsw6Y7Vr5Oo2sgAlc4iLe/1CRAx2r8UQUokDthPHrjt65EVY1ADmtz1IV4hgjl7I28QbTo9TCFvR2Ar38lejcgdTsYeATb+NcsnZOmFEPdi2BR6kocpcLxMeXXjHO2qokjInkGrsuV07STU8ISwC8LdRh8nDo/BTF4EgfLlPuowBuYGVSHslFdIwzETnKcN3ZUONKWhSiOqR4OJqKUtlz5w8Yqb9R3rSYPt7k4j0Obh7cOG7adZOlbE1726pkKGeTwgPS6csq8d41luQXcmGsp90WzEOi4by1qvcev/u6fr9v2KkDX5QjE9t249LR1ApPsGrtxrQbWhSZESBd5qqfuZ7zp
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR10MB5488.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e882accf-89d1-4c52-223b-08db7353b28f
X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Jun 2023 19:05:51.8102 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: iB2/JTYzRKtlURQBxQn9+fXZXQR7LrjznlqJPiMxGodWrYE/fTN4Be4emIVVXurdggZJUzxzXOtbVCIGpzqEkA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR10MB7090
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26
 definitions=2023-06-22_14,2023-06-22_02,2023-05-22_02
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=789
 adultscore=0
 spamscore=0 bulkscore=0 malwarescore=0 phishscore=0 mlxscore=0
 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2305260000 definitions=main-2306220163
X-Proofpoint-GUID: zYffJXw0QGekeJwM_Y0MjMqIVmwCefqp
X-Proofpoint-ORIG-GUID: zYffJXw0QGekeJwM_Y0MjMqIVmwCefqp
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 64185
Cc: "64185 <at> debbugs.gnu.org" <64185 <at> debbugs.gnu.org>,
 Eli Zaretskii <eliz@HIDDEN>, "me@HIDDEN" <me@HIDDEN>,
 "zkanfer@HIDDEN" <zkanfer@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Sorry, but I can't comment further, as I don't
understand what this does.  I don't see the
code for it in the bug thread, and I can't
guess from the descriptions there.

E.g., what does this mean?

> we could have a user option to do that
> regardless of the argument, but then we
> should decide on which of the N new lines
> to put point: the first one copied or the last one.

And this doesn't help (me) either:

> In case of a prefix numeric argument,
> it also makes sense to have 3 choices:
>
> 1. leave point on the old line
> 2. move point to the first new line
> 3. move point to the last new line

The "old line" is presumably the current
line before the command is invoked.  No
idea what "first" and "last" new line
might mean.

Is this about duplicating multiple lines?
Is it about doing that and then also
moving them down or up?

Without a full description or seeing the
code, I can't suggest anything helpful
about the name; sorry.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 22 Jun 2023 18:53:40 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 22 14:53:40 2023
Received: from localhost ([127.0.0.1]:36738 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCPR5-0008RR-Qy
	for submit <at> debbugs.gnu.org; Thu, 22 Jun 2023 14:53:40 -0400
Received: from relay2-d.mail.gandi.net ([217.70.183.194]:58087)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1qCPR4-0008RD-DA
 for 64185 <at> debbugs.gnu.org; Thu, 22 Jun 2023 14:53:38 -0400
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
Received: by mail.gandi.net (Postfix) with ESMTPSA id DA4C640002;
 Thu, 22 Jun 2023 18:53:30 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Drew Adams <drew.adams@HIDDEN>
Subject: Re: [External] : bug#64185: proposal for new function: copy-line
In-Reply-To: <SJ0PR10MB5488776062FC2959D0985007F322A@HIDDEN>
 (Drew Adams's message of "Thu, 22 Jun 2023 18:42:36 +0000")
Organization: LINKOV.NET
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN> <837cry73z9.fsf@HIDDEN>
 <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
 <838rcc3wzs.fsf@HIDDEN> <86ttv0ynyk.fsf@HIDDEN>
 <83mt0r31n4.fsf@HIDDEN> <86a5wrxv9z.fsf@HIDDEN>
 <83edm32xy9.fsf@HIDDEN>
 <SJ0PR10MB5488F9BAEB51AC8F9B9B374FF322A@HIDDEN>
 <86legbwdtf.fsf@HIDDEN>
 <SJ0PR10MB5488776062FC2959D0985007F322A@HIDDEN>
Date: Thu, 22 Jun 2023 21:52:03 +0300
Message-ID: <868rcbwcrw.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 64185
Cc: "64185 <at> debbugs.gnu.org" <64185 <at> debbugs.gnu.org>,
 Eli Zaretskii <eliz@HIDDEN>, "me@HIDDEN" <me@HIDDEN>,
 "zkanfer@HIDDEN" <zkanfer@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

>> > FWIW -
>> >
>> > Point is the cursor position.  So I'd suggest
>> > just "point" (or "cursor-position", if you
>> > like), and not "point-position".
>> >
>> > We do use `pos' in various names to mean a
>> > buffer position, but in those cases it
>> > doesn't stand for point (the cursor position).
>> > So I agree that `pos' shouldn't be used here.
>>
>> In the patch a new position is counted by lines,
>> so maybe a better name would be 'duplicate-line-final-line'.
>> But this double "line-line" doesn't look nice.
>
> Is it about absolute line number, relative line
> number, cursor position (point), some other buffer
> position,...?
>
> A guess, from what you just wrote, is that it's
> about the relative line number, i.e., relative
> to the number of the line of the cursor initially.
> (Just a guess; haven't followed this thread.)

It's a relative line number - an offset from the
original line number where the number is in line units.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 22 Jun 2023 18:42:48 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 22 14:42:48 2023
Received: from localhost ([127.0.0.1]:36730 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCPGZ-00086p-Tn
	for submit <at> debbugs.gnu.org; Thu, 22 Jun 2023 14:42:48 -0400
Received: from mx0b-00069f02.pphosted.com ([205.220.177.32]:9396)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <drew.adams@HIDDEN>) id 1qCPGX-00086g-3K
 for 64185 <at> debbugs.gnu.org; Thu, 22 Jun 2023 14:42:46 -0400
Received: from pps.filterd (m0333520.ppops.net [127.0.0.1])
 by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 35MIIqmf005803; Thu, 22 Jun 2023 18:42:44 GMT
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com;
 h=from : to : cc :
 subject : date : message-id : references : in-reply-to : content-type :
 content-transfer-encoding : mime-version; s=corp-2023-03-30;
 bh=tiWOsvSwsAV2U5MiBm1r4msK8OD3UfWk8mdxGL41qc4=;
 b=FYTk01GxArygJMfYOaxDM8raKIC7hbPyRLkUHjG1Efm2B0p/tM5PkXsRIlOlRBdHXvcM
 QhjJ/Ac3YGsxVZFJOzDylOvi5NAdMPeKq/a9UzWlQ9Jx8Jj4xdW9f232wvYApAzSkvX1
 7xUp5EUmoyga15U3RsJNfyj1tv2FIu2R0gGXtCu+pTbXFluhWokcNSqf9jRxlkzi+bPY
 YUq5+2wAQLl5vYK5f82IZHOt/SNyNleh9giwZwRWCmHM1rPYt+7nVEXuNNMK3In41YVD
 zj7XrPZoY09EuPwpmf32ySC2SMxxrBKQv1Su7pfXZNtyJYwONnoMTrAntMfQSgW/E8IO cg== 
Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com
 (iadpaimrmta02.appoci.oracle.com [147.154.18.20])
 by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3r94vctp1k-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Thu, 22 Jun 2023 18:42:44 +0000
Received: from pps.filterd
 (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1])
 by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19)
 with ESMTP id 35MIfNj3029760; Thu, 22 Jun 2023 18:42:43 GMT
Received: from nam11-dm6-obe.outbound.protection.outlook.com
 (mail-dm6nam11lp2170.outbound.protection.outlook.com [104.47.57.170])
 by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id
 3r939dywtm-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Thu, 22 Jun 2023 18:42:43 +0000
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=m/3LuYzFAQpdI3w7JJo9Pjzi0gBIxpuzQW40siNEWsCQu9rxM8ZThoE3nOcxYMfxf8KT0ARyaof7+QzN9xhqh4TcQfDWj24Zw01cPQfFFgDZP+KbUYoTV1ZoKM8xBY2RzchBBNyCsGlXJQHw68mOLV4umqwOl67HVUL/T0UU+wa1UCSWGe8f1t3t+tDKwyEwzrDKcIKcpcTsqr5KYoCPYRs4Hep2Biogj+8YkcuWMpVLwXn/3qSOAV/LKTifsoUxLG1PFxuKoBaweEcuCz2l2jznZb4a4yiTlwy2SjnKTw3ClYXvvB72cMX/W0zCxU+vjf86cG0vZLMFhd/IoCgZ/w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=tiWOsvSwsAV2U5MiBm1r4msK8OD3UfWk8mdxGL41qc4=;
 b=k+ulAwubsX4YRmgL1IOWqy0jfkEHFKGIuB/bKSSHyZ4Foyt//gzTzCEq7sTs4QKvAq2gcLELsBdunxVUwTugi3oqRlob5jZY2AtzZDfSbTgk5O294n64y7NqCVN/WnpH9CVp4XG9KmGmFSo4KpYlpgsHO8NfG0kMNb/EJkh/+yGHfREjg5+S9g9xyAX34q48STY7hGtzZGEK2xI3bDmYNyLf3UMAaj6hySfcUm5+IQZMLrvHxgVpYJCWdIHfeTZ5PNyhXcj75JcOkQBchXdaAi0970kdui4erW5gGHL9yR0UIBii+NRafx8h/GGdvHU8KB80j0UPUnCJ3VKND+1pwA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com;
 dkim=pass header.d=oracle.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=tiWOsvSwsAV2U5MiBm1r4msK8OD3UfWk8mdxGL41qc4=;
 b=JTHKCmcJQ4x8l4NEZax/Q2RCEJ1z+qVr6RL5AIi8dP2nu6llScHVB+/APCOXLd3ftjadzUWUzQ9DkeEtUgdbfDZzmThBZ1WR+XJwVBu1Dy1i5Mi5t0yZ7hDfW70j7wC36hO/gd9SfGnh6VvTajD85HVMUGn+UVBIrlpx4aDz7JI=
Received: from SJ0PR10MB5488.namprd10.prod.outlook.com (2603:10b6:a03:37e::19)
 by PH7PR10MB7839.namprd10.prod.outlook.com (2603:10b6:510:2ff::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 22 Jun
 2023 18:42:36 +0000
Received: from SJ0PR10MB5488.namprd10.prod.outlook.com
 ([fe80::22c4:9389:291e:aeae]) by SJ0PR10MB5488.namprd10.prod.outlook.com
 ([fe80::22c4:9389:291e:aeae%6]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023
 18:42:36 +0000
From: Drew Adams <drew.adams@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
Subject: RE: [External] : bug#64185: proposal for new function: copy-line
Thread-Topic: [External] : bug#64185: proposal for new function: copy-line
Thread-Index: AQHZpTelvqlGQIGp10iWHwb8s/v32K+XJ2tw
Date: Thu, 22 Jun 2023 18:42:36 +0000
Message-ID: <SJ0PR10MB5488776062FC2959D0985007F322A@HIDDEN>
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN> <837cry73z9.fsf@HIDDEN>
 <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
 <838rcc3wzs.fsf@HIDDEN> <86ttv0ynyk.fsf@HIDDEN>
 <83mt0r31n4.fsf@HIDDEN> <86a5wrxv9z.fsf@HIDDEN>
 <83edm32xy9.fsf@HIDDEN>
 <SJ0PR10MB5488F9BAEB51AC8F9B9B374FF322A@HIDDEN>
 <86legbwdtf.fsf@HIDDEN>
In-Reply-To: <86legbwdtf.fsf@HIDDEN>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: SJ0PR10MB5488:EE_|PH7PR10MB7839:EE_
x-ms-office365-filtering-correlation-id: 40e1ac6e-d662-4022-6f59-08db735072ce
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: ZK4k0yvN7vizDUkJTi4SaYEBXSyasKS8tsf+wSiA6MOCwUMq8/EdFwOv713wmgBoZO6NbyjTbV8uMj50HPWkAkex4iYX4jGJGYCqmwaQGth+coThA0V03xmi3r/++MPZpD9MSbVUPWQ+FBalMyKn7qX20QPdySc6mHVxvG76Pm8EJU//Q7YaQNq1S3Qnpp0ZyURvWGkeFvN3pL/3bsIHM3ZahBJ8tj/30kJCAG53c/1NP/QX7MjMFZKJ0ulQWWUUb65dwu5mGpbuGVS9XSsuwg61pUGVB5ED3+7MrYAfTByiqTRy3a9C/NUUpPDtg/ww9or2Q8y3Ra2VKnAxFBeOqT915TQqji9fSWAFykgW6z8AsDM12spEPNxWcBi5XA3qhF0vWwhZ01RGl9AJsJ+YOtQWc+B6HfuXUQCWqAlHMo+MZ6QK6t+8ll3B+Pn8XV8hMjzCFYAW7bJcSUBMKsgN29h1uQHukrtlBc7j28ILmGjuLZbyJAztsUJy+QyYp6mPrB86W1eKQdDutmQf3vagXt3Nr0/2PaDboqxtG3wmpIA+PpwF4UFE4UHaZZ8q/OhkUoScBpsLKACgrkSDjNDxTvGVy7e8re6mxTotrowOpYyIJUEviXRYkltn6zdv8p24
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:SJ0PR10MB5488.namprd10.prod.outlook.com; PTR:; CAT:NONE;
 SFS:(13230028)(366004)(396003)(346002)(376002)(39860400002)(136003)(451199021)(7696005)(71200400001)(478600001)(38100700002)(186003)(122000001)(86362001)(38070700005)(55016003)(33656002)(6506007)(26005)(9686003)(8676002)(8936002)(41300700001)(52536014)(44832011)(4744005)(5660300002)(2906002)(54906003)(66946007)(66476007)(66556008)(66446008)(316002)(64756008)(6916009)(4326008)(76116006);
 DIR:OUT; SFP:1101; 
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?e/jvZmE1lJIfCkUiCEBZcyuNYhPmkQCEUq5ApgQXjHTuewS/uE0ZeGdCCyb7?=
 =?us-ascii?Q?/rCwCxKnzV4mxXkqUxG51b2BKRy+6vrFLP8Ix+1P465c4fpg2RiCCqhSHv2e?=
 =?us-ascii?Q?UhrtOuajTTTJ2iEmkg2JqtCXViE2pt4/155ElIgKKqrG9IxJVUn/CkNkzhJg?=
 =?us-ascii?Q?32cI/57GUq2VZ3VyRUzT35U5nbPFa0A+646/jO8HXSFHcQNNQuxPyDC4Ubfw?=
 =?us-ascii?Q?JgU8VjSCPMOkbyFnES92SC50/yl0YnKq0Sqa6PCI5JJblz0NBcrHHFGtGE4m?=
 =?us-ascii?Q?nxA/BHRdc0yjTl3Uld901f2svr3CZU/SCN0ngALQO5FVigvGJHQ6xtKChJ+H?=
 =?us-ascii?Q?G3rL7+k6l1upebnWD2DomZT+4ATG7tr1qvm8idSCFGFZ2CVFLvVOYjJT/ShN?=
 =?us-ascii?Q?6osP2elOfXfMFjRxOhvJdhFyV1+TPlKJFPduL3cMAwjYqD/udlrNUH5BoATe?=
 =?us-ascii?Q?kjiV2XjLoCVGKztkv3r/Xs0ybNeKafEITBW5ghG7KGODu5vMYb0MAhYNofNZ?=
 =?us-ascii?Q?qOVWIfGj891cXFFuMGa+zzJUPTnPzKXH8ae+YuqwHzYhc0XBFlLsZ0zrH8ST?=
 =?us-ascii?Q?eLgj8qAoCZX4kU46VOMZJU64C1wzXiRCbb9uOuGqVl1UKTRvocri1anDtZyf?=
 =?us-ascii?Q?7IBLpcyjheamdHktj94wKB4xURS6sKeXVDCaR4p4VHKML1Oo1wd0i9o6QjgA?=
 =?us-ascii?Q?bZ57DuenMUpOPGhXOJc06Y5fX3gbIhqGA2v61dT2qFmhaj17HVqKyUxrQHWx?=
 =?us-ascii?Q?SOYd2Ih9GS1RkuABOuZW4IZfavGxQLNjxd/LlEZS7m8z2bPyvoRR5Jkf4ISj?=
 =?us-ascii?Q?KrwgzgsIy2+1ceBBYHfVcA30N1+B4Gk1nEpYCyBCXLOXWE8WKF+AMCkEN6yv?=
 =?us-ascii?Q?SEJ7R6Uf4nG6E0V+EjZUNst4/TL6DQ1xfzgor8nU33LoeXHWzOQ21HeAv+Bh?=
 =?us-ascii?Q?/btSoJaigXgDuraPMQHe1Pl++L26XZiCBIZjQwO5M5G6lN/3+6klG9DZajNa?=
 =?us-ascii?Q?vQ6ZwUzOWef3Dq8jegooEuwzVO1rjexiEZQuk70+Wd73r4chI2Qo7fsN7r1e?=
 =?us-ascii?Q?eFb74nmCfrnwiI31I8UYR5fJ9m6Wv+1hmTRAJmZ1p/1h8PBkmKqBUswGLF53?=
 =?us-ascii?Q?ZXlthb1eRlWkoNDDXTCNnvw34ecsFuO/ZfafrHCzziDix9rbfmW7zlt0n3yP?=
 =?us-ascii?Q?9m2n9sWsFD0pBmh/YwFT8OlgZereJy/x+f7TrPhRcb73escFEpxS7todC0uL?=
 =?us-ascii?Q?fXInqtRrd0MVCVAfh5qyywIz6ZN719a+qfblx1MHA4SlJazNkF74UkMHTwqu?=
 =?us-ascii?Q?p8M+yDZ1DYPl2bTI213SoImH4x0UaGpEX1SCDHiVMeQcm3HJbRkdUC/ZnEh1?=
 =?us-ascii?Q?WMgMxfEQHOjlknL0z78y4h3Dpn4SgSiPyUvr7KIe2G2qIsEDeb04CTa58mTv?=
 =?us-ascii?Q?pR/A49OMlSAAORnWLCoQZ34NbNdXhORS+GXYzQtI9c8U9zVdM9zX+tHPNfVv?=
 =?us-ascii?Q?y5vWXRZpk34ju0UOJOkiRcTNib9A0Xr/eKMqO01UyYPc6HzOQpC0D8NVtcnC?=
 =?us-ascii?Q?Q5CRPJtUloV87WwoGz3wUrn5Rzp9sbDiHRS2PGQh?=
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: mGI4bVItVd63sI8CpMzPwlDwdQYKzdpwcdFqeFsFMCs6gAKFgb21zCoQHy5UR2aDpTT/fXt9CvDHgs8cqRO6BKEVGuyYoFJph+Cj4r6mf+N1U0XE2YJ7q0LnD8Ziw2ezg9UanFEYmXcw4VXtDwO6sWHShj5tf4PrG9hesG/Refzr9m8SEv6edfFtQWa1IHMhXJITuHXAEmD4MNOyomBOs2BpO8S8iRqAKun736mOvQYD1GSHNBWzXPlQgyzIwARYo4CdUu4Q1t4NLumMkKkMcFea8qHhHuNSC5LUoRdyUxsDek1cxz9FgsyJzllNc3YjZIbA/cGlp+Un2CVvH/+Wtpk/IZ9iXgqOiCVNs6jtjVPUCHimiQEzN+ZErnEvBvuB+wAlykm8woXcFBGHQK3/kzuB8QXOTIgWfNlcujfGT3//zHzJ/cpKwfkKYBEuedeji9PNSHC5kGqypV3y2uuN/fgWdkm/EdDG5AjcgXXatuJkJTAJNb/KwLVpZeM/M9rw/DSj8ERm87YcxcaLnlemlHAjIVKhdvWsxWAa4N9X1NjOM1gnWF48FAHUb9tqv2VTgrrFa810c4Z2GOuFHBbfi21qFbswIigX2Bg43tTlSIq6alr/elZUxaKKADZrTUNHJlpWb4Sg5MJAv8RIafRl1ODxAcHeq8VkrKspPYGz5yWQvYgvalJ75AbnUhfLxRSCCud77toZQdb/Zg2x7kJYEqSlnPM+z+TV7eNF0ZNH5hepQ7Lg9Cg4NLwNo59YKCmciTwXuZmLI3ns3TRyHU0H8+OcK4FsRS9NdhO4wDM3NLoFsFqJXXQtqVZebBCRzSxtCdv9HhVMet4lUkIRGU8PqsSXRvtnuedmdMZMb8fUbP917p7uGVd/f8wbphTkmVbq
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR10MB5488.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 40e1ac6e-d662-4022-6f59-08db735072ce
X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Jun 2023 18:42:36.3180 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: /gR4lHwM1jHxKIwxG3N9Kbmb5ZMrz6+K5c6PR9Z30aJlfdQTzpK8q2VMY5t1LbnpW5zw7Q2QFZ35OgYxWntgxw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR10MB7839
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26
 definitions=2023-06-22_14,2023-06-22_02,2023-05-22_02
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0
 malwarescore=0
 mlxlogscore=443 suspectscore=0 spamscore=0 adultscore=0 phishscore=0
 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2305260000 definitions=main-2306220159
X-Proofpoint-GUID: yl4381Odh6wx9Jwza2nDXB71gcQULrcX
X-Proofpoint-ORIG-GUID: yl4381Odh6wx9Jwza2nDXB71gcQULrcX
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 64185
Cc: "64185 <at> debbugs.gnu.org" <64185 <at> debbugs.gnu.org>,
 Eli Zaretskii <eliz@HIDDEN>, "me@HIDDEN" <me@HIDDEN>,
 "zkanfer@HIDDEN" <zkanfer@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

> > FWIW -
> >
> > Point is the cursor position.  So I'd suggest
> > just "point" (or "cursor-position", if you
> > like), and not "point-position".
> >
> > We do use `pos' in various names to mean a
> > buffer position, but in those cases it
> > doesn't stand for point (the cursor position).
> > So I agree that `pos' shouldn't be used here.
>=20
> In the patch a new position is counted by lines,
> so maybe a better name would be 'duplicate-line-final-line'.
> But this double "line-line" doesn't look nice.

Is it about absolute line number, relative line
number, cursor position (point), some other buffer
position,...?

A guess, from what you just wrote, is that it's
about the relative line number, i.e., relative
to the number of the line of the cursor initially.
(Just a guess; haven't followed this thread.)




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 22 Jun 2023 18:30:57 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 22 14:30:57 2023
Received: from localhost ([127.0.0.1]:36719 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCP57-0007pp-0g
	for submit <at> debbugs.gnu.org; Thu, 22 Jun 2023 14:30:57 -0400
Received: from eggs.gnu.org ([209.51.188.92]:36550)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1qCP54-0007pb-AZ
 for 64185 <at> debbugs.gnu.org; Thu, 22 Jun 2023 14:30:55 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qCP4x-0003nf-5F; Thu, 22 Jun 2023 14:30:48 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=5avZa0xNR8SuYKyub+KZZbFHFTgaXV7qywLWk5nM/LE=; b=L5gwQCOljOHI
 fqd6fPw3apltcsLIt8xK6DKIxPRLyPfIEi7S/XZiJhy41nFfwmVP4w8PZ9vWE/B9tALf1PeXR7Ou2
 Xf5zT7hzPEmald45JgyNP996EVXsqwqcLIzWyxFrcLSskfj4GefK193QSa5oHQp3LO98lS093xd7s
 VH+IvJ+erPDXFfberFoxovzdyBaxIKmkLxFRyJbz8M1ZMDqq9KkVsSzSSuI6kipFetphNDIUVvkcA
 d/e9eS1MO3CkEkZ629tqYFvrR+CnSLfGYj+FfPnwO5eVadqU0/ad6hOXINqnQFde4VpeBCJcZ9f8j
 Sjfa3O4c6VRK/UVnkWK7kA==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qCP4w-00033h-5g; Thu, 22 Jun 2023 14:30:46 -0400
Date: Thu, 22 Jun 2023 21:30:58 +0300
Message-Id: <83a5wr2vtp.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
In-Reply-To: <86wmzvwecw.fsf@HIDDEN> (message from Juri Linkov on
 Thu, 22 Jun 2023 21:17:51 +0300)
Subject: Re: bug#64185: proposal for new function: copy-line
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN> <837cry73z9.fsf@HIDDEN>
 <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
 <838rcc3wzs.fsf@HIDDEN> <86ttv0ynyk.fsf@HIDDEN>
 <83mt0r31n4.fsf@HIDDEN> <86a5wrxv9z.fsf@HIDDEN>
 <83edm32xy9.fsf@HIDDEN> <86wmzvwecw.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN, zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Juri Linkov <juri@HIDDEN>
> Cc: zkanfer@HIDDEN,  64185 <at> debbugs.gnu.org,  me@HIDDEN
> Date: Thu, 22 Jun 2023 21:17:51 +0300
> 
> Unless someone has an idea for a shorter name that is still descriptive,
> here is the final patch for emacs-29:

LGTM, thanks.  But let's wait for a day or two to give others a chance
to comment.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 22 Jun 2023 18:30:30 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 22 14:30:30 2023
Received: from localhost ([127.0.0.1]:36715 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCP4f-0007pA-Mv
	for submit <at> debbugs.gnu.org; Thu, 22 Jun 2023 14:30:29 -0400
Received: from relay9-d.mail.gandi.net ([217.70.183.199]:35651)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1qCP4d-0007os-Jx
 for 64185 <at> debbugs.gnu.org; Thu, 22 Jun 2023 14:30:28 -0400
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
Received: by mail.gandi.net (Postfix) with ESMTPSA id 9C5E5FF804;
 Thu, 22 Jun 2023 18:30:19 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Drew Adams <drew.adams@HIDDEN>
Subject: Re: [External] : bug#64185: proposal for new function: copy-line
In-Reply-To: <SJ0PR10MB5488F9BAEB51AC8F9B9B374FF322A@HIDDEN>
 (Drew Adams's message of "Thu, 22 Jun 2023 18:13:42 +0000")
Organization: LINKOV.NET
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN> <837cry73z9.fsf@HIDDEN>
 <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
 <838rcc3wzs.fsf@HIDDEN> <86ttv0ynyk.fsf@HIDDEN>
 <83mt0r31n4.fsf@HIDDEN> <86a5wrxv9z.fsf@HIDDEN>
 <83edm32xy9.fsf@HIDDEN>
 <SJ0PR10MB5488F9BAEB51AC8F9B9B374FF322A@HIDDEN>
Date: Thu, 22 Jun 2023 21:29:32 +0300
Message-ID: <86legbwdtf.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 64185
Cc: "64185 <at> debbugs.gnu.org" <64185 <at> debbugs.gnu.org>,
 Eli Zaretskii <eliz@HIDDEN>, "me@HIDDEN" <me@HIDDEN>,
 "zkanfer@HIDDEN" <zkanfer@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

>> > +(defcustom duplicate-line-pos 0
>> > +  "Where to put point after copying the line.
>> 
>> A better name for this would be duplicate-line-final-position or maybe
>> duplicate-line-point-position.
>> 
>> Also, please mention this variable in NEWS, where duplicate-line is
>> announced.
>
> FWIW -
>
> Point is the cursor position.  So I'd suggest
> just "point" (or "cursor-position", if you
> like), and not "point-position".
>
> We do use `pos' in various names to mean a
> buffer position, but in those cases it
> doesn't stand for point (the cursor position).
> So I agree that `pos' shouldn't be used here.

In the patch a new position is counted by lines,
so maybe a better name would be 'duplicate-line-final-line'.
But this double "line-line" doesn't look nice.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 22 Jun 2023 18:20:09 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 22 14:20:09 2023
Received: from localhost ([127.0.0.1]:36697 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCOuf-0007Xq-9K
	for submit <at> debbugs.gnu.org; Thu, 22 Jun 2023 14:20:09 -0400
Received: from relay5-d.mail.gandi.net ([217.70.183.197]:43667)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1qCOud-0007X9-UR
 for 64185 <at> debbugs.gnu.org; Thu, 22 Jun 2023 14:20:08 -0400
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
Received: by mail.gandi.net (Postfix) with ESMTPSA id 74A7F1C0005;
 Thu, 22 Jun 2023 18:20:00 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#64185: proposal for new function: copy-line
In-Reply-To: <83edm32xy9.fsf@HIDDEN> (Eli Zaretskii's message of "Thu, 22 Jun
 2023 20:45:02 +0300")
Organization: LINKOV.NET
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN> <837cry73z9.fsf@HIDDEN>
 <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
 <838rcc3wzs.fsf@HIDDEN> <86ttv0ynyk.fsf@HIDDEN>
 <83mt0r31n4.fsf@HIDDEN> <86a5wrxv9z.fsf@HIDDEN>
 <83edm32xy9.fsf@HIDDEN>
Date: Thu, 22 Jun 2023 21:17:51 +0300
Message-ID: <86wmzvwecw.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN, zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

--=-=-=
Content-Type: text/plain

>> +(defcustom duplicate-line-pos 0
>> +  "Where to put point after copying the line.
>
> A better name for this would be duplicate-line-final-position or maybe
> duplicate-line-point-position.

Unless someone has an idea for a shorter name that is still descriptive,
here is the final patch for emacs-29:


--=-=-=
Content-Type: text/x-diff
Content-Disposition: inline; filename=duplicate-line-final-position.patch

diff --git a/etc/NEWS b/etc/NEWS
index ca0d602e9ad..aa3b758a815 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -696,7 +696,9 @@ between these modes while the user is inputting a command by hitting
 'duplicate-line' duplicates the current line the specified number of times.
 'duplicate-dwim' duplicates the region if it is active.  If not, it
 works like 'duplicate-line'.  An active rectangular region is
-duplicated on its right-hand side.
+duplicated on its right-hand side.  The new user option
+'duplicate-line-final-position' specifies where to move point
+after duplicating the line.
 
 ---
 ** Files with the ".eld" extension are now visited in 'lisp-data-mode'.
diff --git a/lisp/misc.el b/lisp/misc.el
index ca013d5f72f..67048d4ec34 100644
--- a/lisp/misc.el
+++ b/lisp/misc.el
@@ -63,21 +63,41 @@ copy-from-above-command
 				 (+ n (point)))))))
     (insert string)))
 
+(defcustom duplicate-line-final-position 0
+  "Where to put point after duplicating the line with `duplicate-line'.
+When 0, leave point on the original line.
+When 1, move point to the first new line.
+When -1, move point to the last new line."
+  :type '(choice (const :tag "Leave point on old line" 0)
+                 (const :tag "Move point to first new line" 1)
+                 (const :tag "Move point to last new line" -1)
+                 (integer))
+  :group 'editing
+  :version "29.1")
+
 ;;;###autoload
 (defun duplicate-line (&optional n)
   "Duplicate the current line N times.
 Interactively, N is the prefix numeric argument, and defaults to 1.
+The user option `duplicate-line-final-position' specifies where to
+move point after duplicating the line.
 Also see the `copy-from-above-command' command."
   (interactive "p")
   (unless n
     (setq n 1))
-  (let ((line (buffer-substring (line-beginning-position) (line-end-position))))
-    (save-excursion
-      (forward-line 1)
-      (unless (bolp)
-        (insert "\n"))
-      (dotimes (_ n)
-        (insert line "\n")))))
+  (let ((line (buffer-substring (line-beginning-position) (line-end-position)))
+        (pos (point))
+        (col (current-column)))
+    (forward-line 1)
+    (unless (bolp)
+      (insert "\n"))
+    (dotimes (_ n)
+      (insert line "\n"))
+    (unless (< duplicate-line-final-position 0)
+      (goto-char pos))
+    (unless (eq duplicate-line-final-position 0)
+      (forward-line duplicate-line-final-position)
+      (move-to-column col))))
 
 (declare-function rectangle--duplicate-right "rect" (n))
 
diff --git a/test/lisp/misc-tests.el b/test/lisp/misc-tests.el
index f1d22e099b9..ea27ea1653b 100644
--- a/test/lisp/misc-tests.el
+++ b/test/lisp/misc-tests.el
@@ -88,6 +88,20 @@ misc--duplicate-line
     (duplicate-line 2)
     (should (equal (buffer-string) "abc\ndefg\ndefg\ndefg\nh\n"))
     (should (equal (point) 7)))
+  ;; Duplicate a line (twice) and move point to the first duplicated line.
+  (with-temp-buffer
+    (insert "abc\ndefg\nh\n")
+    (goto-char 7)
+    (let ((duplicate-line-final-position 1)) (duplicate-line 2))
+    (should (equal (buffer-string) "abc\ndefg\ndefg\ndefg\nh\n"))
+    (should (equal (point) 12)))
+  ;; Duplicate a line (twice) and move point to the last duplicated line.
+  (with-temp-buffer
+    (insert "abc\ndefg\nh\n")
+    (goto-char 7)
+    (let ((duplicate-line-final-position -1)) (duplicate-line 2))
+    (should (equal (buffer-string) "abc\ndefg\ndefg\ndefg\nh\n"))
+    (should (equal (point) 17)))
   ;; Duplicate a non-terminated line.
   (with-temp-buffer
     (insert "abc")

--=-=-=--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 22 Jun 2023 18:14:02 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 22 14:14:02 2023
Received: from localhost ([127.0.0.1]:36688 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCOok-0007O1-8k
	for submit <at> debbugs.gnu.org; Thu, 22 Jun 2023 14:14:02 -0400
Received: from mx0b-00069f02.pphosted.com ([205.220.177.32]:47000)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <drew.adams@HIDDEN>) id 1qCOoh-0007NU-4v
 for 64185 <at> debbugs.gnu.org; Thu, 22 Jun 2023 14:14:00 -0400
Received: from pps.filterd (m0246632.ppops.net [127.0.0.1])
 by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 35MGNxHx020613; Thu, 22 Jun 2023 18:13:58 GMT
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com;
 h=from : to : cc :
 subject : date : message-id : references : in-reply-to : content-type :
 content-transfer-encoding : mime-version; s=corp-2023-03-30;
 bh=0378OpzGfz66hwX0k4ipSLW2bhIryEU3qoG4h15O4YY=;
 b=Q9b4hHSKN1NyKynN45RSScOLKeALLRDr0JqEsFJLf6Tlho7BJYCt9OvgFnsDVA9xp3JM
 eyBftqPtwJj/Yar0eE8dMKhqEAPe1MmCYsE5kYPMNQUoObuwaNwGvXPqicYx0AKwjJAg
 VKQ3CSm0E5xDqN7XnER8bUUlo1BeE2tH1NLPFBoNFOQ8qp1M6Oy93YRBSP7eGaYaj7+o
 FypThxcsrML1oo+7her78z0uepVPH7eLAM5sBFLOGboq2PPBf9W9T5x4Vi58nBziI2B8
 RrIk2/iHb9uohbti0+23DorzKsQXQTxrXyb7vWfvGBWykDqnrn8TozNRWFcFxCPDBXvg Pw== 
Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com
 (iadpaimrmta03.appoci.oracle.com [130.35.103.27])
 by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3r94etthmd-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Thu, 22 Jun 2023 18:13:58 +0000
Received: from pps.filterd
 (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1])
 by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19)
 with ESMTP id 35MI90ii005865; Thu, 22 Jun 2023 18:13:45 GMT
Received: from nam11-dm6-obe.outbound.protection.outlook.com
 (mail-dm6nam11lp2177.outbound.protection.outlook.com [104.47.57.177])
 by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id
 3r9397qgrx-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Thu, 22 Jun 2023 18:13:44 +0000
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=h4gr6/KpuKIA9dcFxIoBrjvUNXcrW/NNuwZlGk/d2rYaS0JoaaJsSuNoblLp7F3qNOdzWUUe6FKubGjQaRUwQu//6FDZl13WcjzSucbc3HjEptoK81KI+rqno9fPH9meW8vnNF8lAww8YbQ/X+mSvhM9B5g66K3mc4sR/UAZVeetwYxg7BTeJAoFJB4kqnzrZY4FbQqSPAZvS8Y2fwljkyaWgHNQvmiQ5vwA4mHPHZUD0GPYtMPlvTrvW98R9/nMgPQFHARJHCF1n4BOLpuBIAwsTBuzDfgNSsgyBJRCHRLGQcvsSTXPvL3bzmJn8jd0gzbCbWcEn1cIUUBXSQjyQw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0378OpzGfz66hwX0k4ipSLW2bhIryEU3qoG4h15O4YY=;
 b=B+r1+k87mhE56MDAOzTCp5cIPPngsaHXwZqNSLyW2vHfguVlRHGXtDmaBytiKsVU1PvWHQVTNNm8O3qEe/ExsRJH8thGMt4pPculpIKavisdPjNphY+dVmlu5FChD2cb8RU7gjWMM+LTkPHPj1plgsPV+XcHXIi00zjkCq0WMlV7tqi6rnQJALx/7Bt599/JGmpP6TIqc2c+CidgsMdPNZsvFC9n2XkOgmnLlJfDZmBb6J+TJJxYTCIImcjh1zANE4rEPMiRg5mJb/UEpwXioZL67ePmZGVyJfhy0+suQMhD6JQXw0EkPqncsOWYQSBREd5ZNuVTXrvI4ptTMuBGaw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com;
 dkim=pass header.d=oracle.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0378OpzGfz66hwX0k4ipSLW2bhIryEU3qoG4h15O4YY=;
 b=wQlbThjSA4tX45RgaeHdyvYz6Z/p0dCupNpuWORvB4iRvPZneab7c+uLX4QLEjj6+ok03jYojgRE2HebDuBSmA7XKM8RScEZ4oINMSWLl8HnWy+T1fx+qSFstJ5ue3+eUVidx3J8uQq4dK63T4KjqRLzIsN7ppgFdrWkelosMuU=
Received: from SJ0PR10MB5488.namprd10.prod.outlook.com (2603:10b6:a03:37e::19)
 by PH7PR10MB7804.namprd10.prod.outlook.com (2603:10b6:510:2fe::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.23; Thu, 22 Jun
 2023 18:13:42 +0000
Received: from SJ0PR10MB5488.namprd10.prod.outlook.com
 ([fe80::22c4:9389:291e:aeae]) by SJ0PR10MB5488.namprd10.prod.outlook.com
 ([fe80::22c4:9389:291e:aeae%6]) with mapi id 15.20.6521.024; Thu, 22 Jun 2023
 18:13:42 +0000
From: Drew Adams <drew.adams@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>, Juri Linkov <juri@HIDDEN>
Subject: RE: [External] : bug#64185: proposal for new function: copy-line
Thread-Topic: [External] : bug#64185: proposal for new function: copy-line
Thread-Index: AQHZpTF5oJYCYvRqLUizLjYn5lydjq+XHgYw
Date: Thu, 22 Jun 2023 18:13:42 +0000
Message-ID: <SJ0PR10MB5488F9BAEB51AC8F9B9B374FF322A@HIDDEN>
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN> <837cry73z9.fsf@HIDDEN>
 <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
 <838rcc3wzs.fsf@HIDDEN> <86ttv0ynyk.fsf@HIDDEN>
 <83mt0r31n4.fsf@HIDDEN> <86a5wrxv9z.fsf@HIDDEN>
 <83edm32xy9.fsf@HIDDEN>
In-Reply-To: <83edm32xy9.fsf@HIDDEN>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: SJ0PR10MB5488:EE_|PH7PR10MB7804:EE_
x-ms-office365-filtering-correlation-id: 62a2e264-f5bc-4059-34fa-08db734c692b
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 38R3OovZQgIBduofaL/ISrM0iUvqf/YfDPkKCuuhSPV8mHg1MHcHsdEnguNT39GusOGY9lWSAbiNdyQNAMwXucLNQGXXjzJKFYAn6WzdmGFwBsTHu3VmjPmU8pJXoMe+p0Sytd9UIWyVizOy6Mx687TgR88H2SXsAZg4ar7BjcecjmkH8stOhQl1MUnZmPLM863VgCm30WmQCXK2ZH8IxNeVDDSgX0M3fPSGGrQgsEB+xWNSGFm3Bc5+3MMfQlVsWx9K21yp5i9ZDqXNwCIqB93NflwDeORjVYsgmDEbpv55IyQolFKlTW1XpT4dWeDNYIsLVJEFOs6BM3w+41ghWum7E7SUQ3hwD2TSjQjYSn9VkTRdU0ju2DZXQsxg2o6dRttn4aRWTssmbJ7MSR22bfnERJjaJXWqhRnv1O9SQmG1X+t0Yjf2AFzedPfMViOmeakKO+mfa4CkIazxghOMNkqkWkLRoE+z/9yh/Knougyvx0ZSy46G2ML2k47fTc+m7GLE4ch9WcLNwSe9D5ZLXDG4ZpJvUrL+re3mg6TVMxT4ehyETwqNV/BI1JBctYOQkMTLBPw62T/J/T2AU7cUXtmfuJd8xBwPkrPcB6s9HBBoNI40ZAshDyA4pxbzwDFQ
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:SJ0PR10MB5488.namprd10.prod.outlook.com; PTR:; CAT:NONE;
 SFS:(13230028)(396003)(136003)(346002)(39860400002)(376002)(366004)(451199021)(478600001)(71200400001)(54906003)(110136005)(4326008)(76116006)(86362001)(33656002)(38070700005)(55016003)(38100700002)(4744005)(7696005)(2906002)(9686003)(26005)(186003)(6506007)(122000001)(64756008)(41300700001)(8676002)(52536014)(8936002)(66556008)(66446008)(66476007)(66946007)(316002)(44832011)(5660300002);
 DIR:OUT; SFP:1101; 
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?RjfriXPJO6Jz3SjA6SB+IkIsf1l8QDfjHBwFq0AM9v9sIyIXEErUpKmqXyzX?=
 =?us-ascii?Q?4I+JOIkvsEofOGcCsdFp5SQ+qTpYuJDkpNG+9FP6b9pOeiivMnMfS66AASUD?=
 =?us-ascii?Q?4t4ZGQgPvBwYNufugRI8ze9T465AvxwrbTxw6mJkx00EYsSKmTquFUn5zfBy?=
 =?us-ascii?Q?cHYmxndZq+LsTJpoO/mBZR55Fw+UnwsFQ1RFqnkRkzHHK67p1SAF/wzZL5dW?=
 =?us-ascii?Q?ir+HdzSJLlGA6D0HMX5fEZUHK+p1Jm6a/1jmME8tKd1LplPTAi6Jx6dqogiS?=
 =?us-ascii?Q?cbibvXknA8iJa4H6TvntY7LiWMJWZlwFyAe6t05y/rfKq6ZpysUrIcWxc+aa?=
 =?us-ascii?Q?xMaXt5yb0oR9UMIAYv51S0KaQ0POLYhiQCCwXIqgqixw/i9LsN7ebr6CxneD?=
 =?us-ascii?Q?arnOghSHlxtr5SfACghCTxjnf5TLDWah/zo8DnXEKWyZAGN2Oatm7QtM+S/a?=
 =?us-ascii?Q?rAdrAkx0gkXtM18AWNIjhdDJwjriWBscDWM+DSdOT+GXJXJiF43MHKfVtSit?=
 =?us-ascii?Q?JRMdF8ne8gTIjuplsoH4BCIeYLFMIUN1qy6W6G3GjhkWaf8yq61JsRsip9a4?=
 =?us-ascii?Q?mTd6EYLqp9EmAgpCLMbn9KkZEiXkFv2ZUDcpI24lfut0zBsTsgTEo+5RDsLk?=
 =?us-ascii?Q?ATpoMHAqcfd2Ymds/d2xL8eGDWjg5ARne6deb7EjXPk6Xc6TVaJzQEmXb1cF?=
 =?us-ascii?Q?BSYpd90zTbDb8WSTNC7VieS2286heJEt3i1lWElZjbO6gjZEbXKB1ZJYT7vO?=
 =?us-ascii?Q?7E2rovzIWkmosNUpdTjYffnsoR86GsYYk/NSqQGYfo53c1xZoA8WYohEIL2n?=
 =?us-ascii?Q?2OF0loPXWQABzGNKlbBNLVHz7ZigpkSjn3KdT7eDUr5AKVLkY3fOj23vUZKI?=
 =?us-ascii?Q?1GDzPBlCTV8ANAAONqp92AXRGt8IRJyRjlajafnYnPn5Yx0O6ABGnEN/l3+v?=
 =?us-ascii?Q?wkNxLkzUKiy0mV/68+zxW+uSxxQeCHzSoQGN1cNrZf/DfXxtC9P9ZX6Iwef7?=
 =?us-ascii?Q?pT84sf6Xfv3fPLVdU133R885dVEkke1/MxZvYbuWXCy4xzVK7gon4cRAWfsi?=
 =?us-ascii?Q?GLZGOYv5SgSrwqPnkygIOhDY18EW8t3oB/Ki6Dt0v7CszT2n8xe1lWESBd9s?=
 =?us-ascii?Q?tQ5CPxMtn4aI9fRtbl203LtmSkK9Kl/k76HefyJ5dMxWFGpPChI9+6ek7QKG?=
 =?us-ascii?Q?OrjDpLCPrySPDWe0gr+1rNukevTr9jDnfEtljwIOypxpssaKStVEvEYGUElX?=
 =?us-ascii?Q?2dWzPAB60LVFcXlBtaE3Gh2KUkUmOGEG7L5/7WimHy63hCCTlsoI/pAOEsO7?=
 =?us-ascii?Q?MweExIyTnFBh10GQvAdTnVGphAp3/ixYHjF4Wwup7DnPiKr04Kn+YsfrM44Z?=
 =?us-ascii?Q?L7d0efuJw0Ia90E0XNLk4YirX8B1GGIKecTSOICmIr5i77et7/fj6lMQzTBq?=
 =?us-ascii?Q?SsKGiysLtjvubLOD4gJc7EbMC42MIi6bepE53IFwRSRE0YDPC4BAOnxZ2rWw?=
 =?us-ascii?Q?2UEgOX9h0TuY4a4JLVUO1WhJYSU7ym2EVusMp4R3dfT53yfP6DSWt5ry1P0t?=
 =?us-ascii?Q?UB+zbK0Om6zuD1BgWUAhlrMaeuyZCYsZJdYVwcUc?=
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: vpYVEkhjXN/rVBFNcQhqAH/CymZ1EiMdYpkdJhHQbQsn+HtSl7fDW2yNgXB+rYNVgS1d+PzudDxRKorYxFnsEINr2ZzNi3uiYY/Q4t+j64SDOBvPigq1XIEUoC+VVCgguOlh+vtJCKPLCchmMJ1z7dHQhilOFmuYSFISJIgARO37/+Ja3DxdAIlsZ95GKNG0YTyocr2WtiJy41LzddGNKaM00dlZjOUydS14pbnh4UUkjBvDBRSuy/5s6BjYb4y3EUNGT1Bg9fUWwovChe/u6G3LQS/GzI3wvQ9AQD3xji1vMbCjZ76psWORG5bYE82ChbKhRst7NDhunG24zEDlYEG8wQleryyXDncotnyI19LbKvruKh935cqkbJC1rr4Xw0rSTgKk2JfwkduBDmMKPcDwh13tiZu30GxZsVY2+EWKsuqgK7XJG2XWewdoV3cmak+INsiLQb6dSUrI+0J2PdpH5E9VKOWc2cGv0fL1MIw1v7CuGvnhEZQIx52HGMKhhXPVaXzi8NatXMnxyz4rSEjsUm7MSnDBUD/8HvxlYH6AA/V1AphWfHGLKvITDc24QtR1eD+nkyp0RwgCbghJ9n2pX67Dw25dVEZEfMd3HUgQqo0Z/uQZBOEwP5uhh+dtJAKATbaYPsqdqPrMl5Ms48yt11rm6FSrh9cmJiO9gfeacqkre0M2AN3UyJ66XiiY3NWc0w+cD/vP4L0hCDI/g9Fh17jcgK/rN6v1KuqZBRbZorU67p5SrV+lICUjYKZe/RTYO6kKZvw/oDL+65x4rpkcWIzR0RKQRyFfbtO7qku3MMFfLu1NVIuD8yPB8O7p3Nh74zonSUEwZ+NtCSXODUL8Ce7T8TDEzbOcPAorP7eg3xnvToTr9wrgTUhOn27D
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR10MB5488.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 62a2e264-f5bc-4059-34fa-08db734c692b
X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Jun 2023 18:13:42.2022 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: O6eyu17tLDMwYeeS2KdmTD1WWesYywCBomk0UDVQrfcKaMCkNOH7g+PJbM3WB/lgUScpLgZq27g70AmEyv2adg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR10MB7804
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26
 definitions=2023-06-22_13,2023-06-22_02,2023-05-22_02
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=673
 adultscore=0
 spamscore=0 bulkscore=0 malwarescore=0 phishscore=0 mlxscore=0
 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2305260000 definitions=main-2306220155
X-Proofpoint-GUID: M2uY4UTtw3gbBb3JfPWQVXTz80pX2dmr
X-Proofpoint-ORIG-GUID: M2uY4UTtw3gbBb3JfPWQVXTz80pX2dmr
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 64185
Cc: "64185 <at> debbugs.gnu.org" <64185 <at> debbugs.gnu.org>,
 "me@HIDDEN" <me@HIDDEN>,
 "zkanfer@HIDDEN" <zkanfer@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

> > +(defcustom duplicate-line-pos 0
> > +  "Where to put point after copying the line.
>=20
> A better name for this would be duplicate-line-final-position or maybe
> duplicate-line-point-position.
>=20
> Also, please mention this variable in NEWS, where duplicate-line is
> announced.

FWIW -

Point is the cursor position.  So I'd suggest
just "point" (or "cursor-position", if you
like), and not "point-position".

We do use `pos' in various names to mean a
buffer position, but in those cases it
doesn't stand for point (the cursor position).
So I agree that `pos' shouldn't be used here.





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 22 Jun 2023 17:45:02 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 22 13:45:02 2023
Received: from localhost ([127.0.0.1]:36672 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCOMf-0006b3-HC
	for submit <at> debbugs.gnu.org; Thu, 22 Jun 2023 13:45:02 -0400
Received: from eggs.gnu.org ([209.51.188.92]:53690)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1qCOMc-0006ag-2p
 for 64185 <at> debbugs.gnu.org; Thu, 22 Jun 2023 13:44:59 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qCOMV-00049i-Au; Thu, 22 Jun 2023 13:44:52 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=PLc7nES0c9bJqxfjfyoSxKHqhF2VO0iOzamZeIqSR4M=; b=VXETO+dgu1/A
 AD1o7CQcevqTYsuWkS0O/f/sbB4qtCeXQL5Uk635/CTWwHo4JFaKJ1nOY/GE7Kr0fZyMrebB/Ol2/
 4vIwFnLcBJA/ez4LeqmuyzHGJEYLrNRcFf1lTDddTl9o4oZsRX8KGbIMinyufGEE+Ap+X8E60L3vt
 9m+qZvi31hYPc9xw0jzbl7RdfL76z+7e9yihd43R6EiK0aNCgqVLDwOLUfmuM3clSZQsEzEfqItma
 F/ypMNJBZYrHPoIaehN6iT5Opfpl86eMU6nMW98piyWYF9PCL7uCAEHoqpp4JaqAKUlIuLak+HkQE
 mRmpZarmtKh4JFB1eECK6A==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qCOMU-0006Ha-JS; Thu, 22 Jun 2023 13:44:50 -0400
Date: Thu, 22 Jun 2023 20:45:02 +0300
Message-Id: <83edm32xy9.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
In-Reply-To: <86a5wrxv9z.fsf@HIDDEN> (message from Juri Linkov on
 Thu, 22 Jun 2023 20:27:04 +0300)
Subject: Re: bug#64185: proposal for new function: copy-line
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN> <837cry73z9.fsf@HIDDEN>
 <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
 <838rcc3wzs.fsf@HIDDEN> <86ttv0ynyk.fsf@HIDDEN>
 <83mt0r31n4.fsf@HIDDEN> <86a5wrxv9z.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN, zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Juri Linkov <juri@HIDDEN>
> Cc: zkanfer@HIDDEN,  64185 <at> debbugs.gnu.org,  me@HIDDEN
> Date: Thu, 22 Jun 2023 20:27:04 +0300
> 
> > Patches welcome, but if you want to have this in Emacs 29, please
> > hurry up with the patches.
> 
> This is both simple and general allowing to specify any number
> for the new line position counting from the first/last line,
> but only values 0, 1, and -1 are really useful:

Thanks, this LGTM, with one comment:

> +(defcustom duplicate-line-pos 0
> +  "Where to put point after copying the line.

A better name for this would be duplicate-line-final-position or maybe
duplicate-line-point-position.

Also, please mention this variable in NEWS, where duplicate-line is
announced.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 22 Jun 2023 17:30:03 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 22 13:30:03 2023
Received: from localhost ([127.0.0.1]:36658 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCO8A-0006Df-O2
	for submit <at> debbugs.gnu.org; Thu, 22 Jun 2023 13:30:03 -0400
Received: from relay9-d.mail.gandi.net ([217.70.183.199]:35751)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1qCO88-0006Ck-OQ
 for 64185 <at> debbugs.gnu.org; Thu, 22 Jun 2023 13:30:01 -0400
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
Received: by mail.gandi.net (Postfix) with ESMTPSA id 65AF2FF802;
 Thu, 22 Jun 2023 17:29:52 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#64185: proposal for new function: copy-line
In-Reply-To: <83mt0r31n4.fsf@HIDDEN> (Eli Zaretskii's message of "Thu, 22 Jun
 2023 19:25:19 +0300")
Organization: LINKOV.NET
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN> <837cry73z9.fsf@HIDDEN>
 <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
 <838rcc3wzs.fsf@HIDDEN> <86ttv0ynyk.fsf@HIDDEN>
 <83mt0r31n4.fsf@HIDDEN>
Date: Thu, 22 Jun 2023 20:27:04 +0300
Message-ID: <86a5wrxv9z.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN, zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

--=-=-=
Content-Type: text/plain

>> > Or we could have a user option to do that regardless of the argument,
>> > but then we should decide on which of the N new lines to put point:
>> > the first one copied or the last one.
>>
>> A user option looks preferable.  In case of a prefix numeric argument,
>> it also makes sense to have 3 choices:
>>
>> 1. leave point on the old line
>> 2. move point to the first new line
>> 3. move point to the last new line
>
> Patches welcome, but if you want to have this in Emacs 29, please
> hurry up with the patches.

This is both simple and general allowing to specify any number
for the new line position counting from the first/last line,
but only values 0, 1, and -1 are really useful:


--=-=-=
Content-Type: text/x-diff
Content-Disposition: inline; filename=duplicate-line-pos.patch

diff --git a/lisp/misc.el b/lisp/misc.el
index ca013d5f72f..a0c8a1f620e 100644
--- a/lisp/misc.el
+++ b/lisp/misc.el
@@ -63,6 +63,14 @@ copy-from-above-command
 				 (+ n (point)))))))
     (insert string)))

+(defcustom duplicate-line-pos 0
+  "Where to put point after copying the line.
+When 0, leave point on the original line.
+When 1, move point to the first new line.
+When -1, move point to the last new line."
+  :type 'integer
+  :version "29.1")
+
 ;;;###autoload
 (defun duplicate-line (&optional n)
   "Duplicate the current line N times.
@@ -71,13 +79,19 @@ duplicate-line
   (interactive "p")
   (unless n
     (setq n 1))
-  (let ((line (buffer-substring (line-beginning-position) (line-end-position))))
-    (save-excursion
-      (forward-line 1)
-      (unless (bolp)
-        (insert "\n"))
-      (dotimes (_ n)
-        (insert line "\n")))))
+  (let ((line (buffer-substring (line-beginning-position) (line-end-position)))
+        (pos (unless (< duplicate-line-pos 0) (point)))
+        (column (unless (eq duplicate-line-pos 0) (current-column))))
+    (forward-line 1)
+    (unless (bolp)
+      (insert "\n"))
+    (dotimes (_ n)
+      (insert line "\n"))
+    (unless (< duplicate-line-pos 0)
+      (goto-char pos))
+    (unless (eq duplicate-line-pos 0)
+      (forward-line duplicate-line-pos)
+      (move-to-column column))))

 (declare-function rectangle--duplicate-right "rect" (n))


--=-=-=--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 22 Jun 2023 16:25:23 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 22 12:25:23 2023
Received: from localhost ([127.0.0.1]:36571 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCN7b-0004GO-Ir
	for submit <at> debbugs.gnu.org; Thu, 22 Jun 2023 12:25:23 -0400
Received: from eggs.gnu.org ([209.51.188.92]:57732)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1qCN7Z-0004Fz-2p
 for 64185 <at> debbugs.gnu.org; Thu, 22 Jun 2023 12:25:22 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qCN7T-0002Eq-6y; Thu, 22 Jun 2023 12:25:15 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=ufpo3lPy19jpqMdQqdHWg8um4XHkMtC61cTYEfBJ7D8=; b=rzk7w2u9ouFC
 yLopi7u6Bb5e3poTxQnd4gNxsxWg9aett9bLeKFYLhH4hxEJwAofD13jyEF1h3mDca/6cfc3BDLiX
 uR920X/xEejVb8uI4P6cvALVzL/tm7qu878ob/BT6rkZkNkNvBSZxu8zYsHvY5uigKo9fB4Jymblz
 hv1+x4XqBPlHnkqKeyhyiw9d+iRgzoFhtqfZcX6Sto+JaCR6EY7G/632pywT8KHquRGoO7iMkJyQP
 JORKCscqfqy0Sb6LDs8V2TiHypRw6CypZ1UevAdNVzV9uLTyFRa9zxoS7LN1Ij8OcmZ/r1uyuqB7i
 AIE5esgyAfAi1kPD1HMtUg==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qCN7N-00052p-6D; Thu, 22 Jun 2023 12:25:14 -0400
Date: Thu, 22 Jun 2023 19:25:19 +0300
Message-Id: <83mt0r31n4.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
In-Reply-To: <86ttv0ynyk.fsf@HIDDEN> (message from Juri Linkov on
 Thu, 22 Jun 2023 09:57:31 +0300)
Subject: Re: bug#64185: proposal for new function: copy-line
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN> <837cry73z9.fsf@HIDDEN>
 <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
 <838rcc3wzs.fsf@HIDDEN> <86ttv0ynyk.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN, zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Juri Linkov <juri@HIDDEN>
> Cc: Zachary Kanfer <zkanfer@HIDDEN>,  64185 <at> debbugs.gnu.org,
>   me@HIDDEN
> Date: Thu, 22 Jun 2023 09:57:31 +0300
> 
> > We could have the prefix arg of - (i.e., "C-u - M-x ...") produce that
> > behavior from duplicate-line.
> 
> The problem is how to define this behavior with the prefix arg C-u in case
> when a prefix numeric argument is used.
> 
> > Or we could have a user option to do that regardless of the argument,
> > but then we should decide on which of the N new lines to put point:
> > the first one copied or the last one.
> 
> A user option looks preferable.  In case of a prefix numeric argument,
> it also makes sense to have 3 choices:
> 
> 1. leave point on the old line
> 2. move point to the first new line
> 3. move point to the last new line

Patches welcome, but if you want to have this in Emacs 29, please
hurry up with the patches.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 22 Jun 2023 07:13:55 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 22 03:13:55 2023
Received: from localhost ([127.0.0.1]:34711 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCEVv-0006cb-06
	for submit <at> debbugs.gnu.org; Thu, 22 Jun 2023 03:13:55 -0400
Received: from relay7-d.mail.gandi.net ([217.70.183.200]:37351)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <juri@HIDDEN>) id 1qCEVt-0006cP-JW
 for 64185 <at> debbugs.gnu.org; Thu, 22 Jun 2023 03:13:53 -0400
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
X-GND-Sasl: juri@HIDDEN
Received: by mail.gandi.net (Postfix) with ESMTPSA id 724142000A;
 Thu, 22 Jun 2023 07:13:46 +0000 (UTC)
From: Juri Linkov <juri@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#64185: proposal for new function: copy-line
In-Reply-To: <838rcc3wzs.fsf@HIDDEN> (Eli Zaretskii's message of "Thu, 22 Jun
 2023 08:08:07 +0300")
Organization: LINKOV.NET
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN> <837cry73z9.fsf@HIDDEN>
 <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
 <838rcc3wzs.fsf@HIDDEN>
Date: Thu, 22 Jun 2023 09:57:31 +0300
Message-ID: <86ttv0ynyk.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN,
 Zachary Kanfer <zkanfer@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

>> I do think it's more useful to put point on the second line; I almost
>> always find myself wanting to edit the "new" line, not the old
>> one. Yes, there isn't really a new vs old line, but I write the first
>> thing I want to see first, then want to duplicate it to make
>> a changed second line.

I agree that it's more useful to put point on the second line.
This is the reason why I can't use the new command 'duplicate-line',
so forced to continue using my own implementation in ~/.emacs.

> We could have the prefix arg of - (i.e., "C-u - M-x ...") produce that
> behavior from duplicate-line.

The problem is how to define this behavior with the prefix arg C-u in case
when a prefix numeric argument is used.

> Or we could have a user option to do that regardless of the argument,
> but then we should decide on which of the N new lines to put point:
> the first one copied or the last one.

A user option looks preferable.  In case of a prefix numeric argument,
it also makes sense to have 3 choices:

1. leave point on the old line
2. move point to the first new line
3. move point to the last new line




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 22 Jun 2023 05:08:06 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 22 01:08:06 2023
Received: from localhost ([127.0.0.1]:34577 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCCYA-0008Qw-0a
	for submit <at> debbugs.gnu.org; Thu, 22 Jun 2023 01:08:06 -0400
Received: from eggs.gnu.org ([209.51.188.92]:37118)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1qCCY8-0008QM-9u
 for 64185 <at> debbugs.gnu.org; Thu, 22 Jun 2023 01:08:05 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qCCY1-00070K-U2; Thu, 22 Jun 2023 01:07:58 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=TVNde3GR9VLaF/siW611zhl3vJXhzovXx0/rsmy6xsg=; b=qzsuk+1hAivt
 To5egm/pjQgexaWFoEDuQLTGz2GnKLX4MWJ9pT4AGvzwQX11bTMliP6LsRCCEW2WlF424LxtgJFdV
 dgTnWjh1AITZb3xcabvR9jo+WuXtXRddM5iKT3HgX+AWF5dUiBSWTmYoGltBgmizs2ifMgdMIPDzc
 TMRFbT67b5aX7EPbKr7Xd9kvNNpcFDOUKk+fXzYW2IBkaZ6vJglDgTjHYC0XMVgPP3Hpq3QcmXJ8r
 5BnYNrQDeFv8xey6X8bS7T7vtKKq1i9upk2kwY80PYCJ8UlfNhE646wpfpH266XCFh2MnqyE6zjHG
 5UV2RWgRwtgGOi9Zc5ceGQ==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qCCY1-0001bG-Av; Thu, 22 Jun 2023 01:07:57 -0400
Date: Thu, 22 Jun 2023 08:08:07 +0300
Message-Id: <838rcc3wzs.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Zachary Kanfer <zkanfer@HIDDEN>
In-Reply-To: <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
 (message from Zachary Kanfer on Wed, 21 Jun 2023 23:33:15 -0400)
Subject: Re: bug#64185: proposal for new function: copy-line
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN> <837cry73z9.fsf@HIDDEN>
 <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, me@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Zachary Kanfer <zkanfer@HIDDEN>
> Date: Wed, 21 Jun 2023 23:33:15 -0400
> Cc: Eshel Yaron <me@HIDDEN>, 64185 <at> debbugs.gnu.org
> 
> I do think it's more useful to put point on the second line; I almost always find myself wanting to edit the
> "new" line, not the old one. Yes, there isn't really a new vs old line, but I write the first thing I want to see
> first, then want to duplicate it to make a changed second line.

We could have the prefix arg of - (i.e., "C-u - M-x ...") produce that
behavior from duplicate-line.  Or we could have a user option to do
that regardless of the argument, but then we should decide on which of
the N new lines to put point: the first one copied or the last one.

> I suspect that although it hasn't been in a released version yet, it's slightly late to have a discussion
> about changing the behavior to leave point on the second line instead of the first.

Not the default behavior, but we could have it optionally behave
differently.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 22 Jun 2023 03:33:36 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jun 21 23:33:35 2023
Received: from localhost ([127.0.0.1]:34482 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qCB4h-000558-Fg
	for submit <at> debbugs.gnu.org; Wed, 21 Jun 2023 23:33:35 -0400
Received: from mail-oa1-f42.google.com ([209.85.160.42]:57635)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <zkanfer@HIDDEN>) id 1qCB4e-00054q-Uk
 for 64185 <at> debbugs.gnu.org; Wed, 21 Jun 2023 23:33:33 -0400
Received: by mail-oa1-f42.google.com with SMTP id
 586e51a60fabf-1ad10ad661cso1450313fac.3
 for <64185 <at> debbugs.gnu.org>; Wed, 21 Jun 2023 20:33:32 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20221208; t=1687404807; x=1689996807;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=yE8elJPW2sHytAUhuEnSQHmqib0jTDEhGIQ9ZbTVVvY=;
 b=Ix/FAUYi0ED5tKqDF/xVrH5ELe024HBOLOsde0x0vBnoIQKz7NbdC0ptizJPLiOOny
 lrJNfLHw3M+1Y6K4CWJQbvIjZlFpoA3SkYLOBUjqlBd1cTwp3Eu2VSXf5KOq0myrZWvt
 qbhY9oWdLS2R8850kwQZ9efR5Qwf2B6ZJaP/swGPNShd7b/0/dFgziMbrRjEpaHSFWM3
 mQtF2ey9EjhydflL/tTPuaPjYc5AYnpCQfK0jyjzfqZW5bgRll3j06N6hJDwivOe8GqX
 tbPZCqGXYzrJAUQup3vlhBWcK5mKGkSdcZYKSKByfrqPrLzmElxiN2YsvMsKaPCopaCh
 1DPg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20221208; t=1687404807; x=1689996807;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=yE8elJPW2sHytAUhuEnSQHmqib0jTDEhGIQ9ZbTVVvY=;
 b=EVmWBeky9EDmGmvz6mseDOm/FA9lhw4Ubt4FBAA7TQcaufnbqmPloGLHd9P3Hv5L+u
 pFJMq0X+FWgttLuxlBQMu7TQei0dZSsP0OSkbr+cvgx/Yyqi7GP/uUg0TROiHagBO5u/
 leKlYqihHD9xp/V3gNuKlZTSjS3W++Phe1lrz3U/iIt7M0G9IYtiMh39ovfqtm5DEP9g
 Rf4tdQyAPHUvazN2ul+XvD5WNFWL+Ws6/iX5gWrtPF1vkBqiM3xQZTDyrmpxxWmqZC+p
 mi+Yc1AtAXSXmoNkBUFEyKy2RF3q3n5i9H4xhAucT/nPcsMUu0t5OGnVXqsEFM/otp7q
 7HOw==
X-Gm-Message-State: AC+VfDxjNMuhXB4o8XlsH6G79prFApFbidhVo7kmWKNM91IzcNdUDcEe
 XO/jl9TIS2o+XOC0zy/QoQlW/+lOgo0QaF8sW8E=
X-Google-Smtp-Source: ACHHUZ7mhuntD0u39BrBAgtYegH0t9eu/Q0NLraXgy//FWIQyAmeCdFgi7NKKtKVGGuLjjnyasipV6ptlySy6W6X/RA=
X-Received: by 2002:a05:6870:a682:b0:1aa:527:db0c with SMTP id
 i2-20020a056870a68200b001aa0527db0cmr10522544oam.43.1687404807085; Wed, 21
 Jun 2023 20:33:27 -0700 (PDT)
MIME-Version: 1.0
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN> <837cry73z9.fsf@HIDDEN>
In-Reply-To: <837cry73z9.fsf@HIDDEN>
From: Zachary Kanfer <zkanfer@HIDDEN>
Date: Wed, 21 Jun 2023 23:33:15 -0400
Message-ID: <CAFXT+RO1zrfk31+OLVTBnKHiY0NOvxz92qdP+=4SvLeMThh2Pg@HIDDEN>
Subject: Re: bug#64185: proposal for new function: copy-line
To: Eli Zaretskii <eliz@HIDDEN>
Content-Type: multipart/alternative; boundary="0000000000001e635305feaf8cb1"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, Eshel Yaron <me@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--0000000000001e635305feaf8cb1
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hrm, this is relatively similar to duplicate-line. I was running 28.2, and
duplicate-line was added since that release. Thank you for pointing those
functions out.

I do think it's more useful to put point on the second line; I almost
always find myself wanting to edit the "new" line, not the old one. Yes,
there isn't really a new vs old line, but I write the first thing I want to
see first, then want to duplicate it to make a changed second line.

I suspect that although it hasn't been in a released version yet, it's
slightly late to have a discussion about changing the behavior to leave
point on the second line instead of the first.

On Tue, Jun 20, 2023 at 7:44=E2=80=AFAM Eli Zaretskii <eliz@HIDDEN> wrote:

> > Cc: 64185 <at> debbugs.gnu.org
> > Date: Tue, 20 Jun 2023 09:15:51 +0300
> > From:  Eshel Yaron via "Bug reports for GNU Emacs,
> >  the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN>
> >
> > How does this relate to the existing `duplicate-line`?
>
> There's also copy-from-above-command.
>

--0000000000001e635305feaf8cb1
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Hrm, this is relatively similar to duplicate-line. I =
was running 28.2, and duplicate-line was added since that release. Thank yo=
u for pointing those functions out.<br></div><div><br></div><div>I do think=
 it&#39;s more useful to put point on the second line; I almost always find=
 myself wanting to edit the &quot;new&quot; line, not the old one. Yes, the=
re isn&#39;t really a new vs old line, but I write the first thing I want t=
o see first, then want to duplicate it to make a changed second line.</div>=
<div><br></div><div>I suspect that although it hasn&#39;t been in a release=
d version yet, it&#39;s slightly late to have a discussion about changing t=
he behavior to leave point on the second line instead of the first.<br></di=
v></div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr=
">On Tue, Jun 20, 2023 at 7:44=E2=80=AFAM Eli Zaretskii &lt;<a href=3D"mail=
to:eliz@HIDDEN">eliz@HIDDEN</a>&gt; wrote:<br></div><blockquote class=3D"=
gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(20=
4,204,204);padding-left:1ex">&gt; Cc: <a href=3D"mailto:64185@HIDDEN=
rg" target=3D"_blank">64185 <at> debbugs.gnu.org</a><br>
&gt; Date: Tue, 20 Jun 2023 09:15:51 +0300<br>
&gt; From:=C2=A0 Eshel Yaron via &quot;Bug reports for GNU Emacs,<br>
&gt;=C2=A0 the Swiss army knife of text editors&quot; &lt;<a href=3D"mailto=
:bug-gnu-emacs@HIDDEN" target=3D"_blank">bug-gnu-emacs@HIDDEN</a>&gt;<br>
&gt; <br>
&gt; How does this relate to the existing `duplicate-line`?<br>
<br>
There&#39;s also copy-from-above-command.<br>
</blockquote></div>

--0000000000001e635305feaf8cb1--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 20 Jun 2023 11:44:30 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jun 20 07:44:30 2023
Received: from localhost ([127.0.0.1]:58215 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qBZmg-0005Td-BG
	for submit <at> debbugs.gnu.org; Tue, 20 Jun 2023 07:44:30 -0400
Received: from eggs.gnu.org ([209.51.188.92]:38068)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1qBZmd-0005TP-TQ
 for 64185 <at> debbugs.gnu.org; Tue, 20 Jun 2023 07:44:28 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qBZmX-0004Jq-H9; Tue, 20 Jun 2023 07:44:21 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=Jq3fn+dWHVwaPEEoraew5wzWBFxk3a05xFQnVcobTQA=; b=nfeWoQGqXl1N
 k51duxj9WiqKwl05pBBa4TtjP0LMsrOs2imqdnp3UkwQmwy9QA7DKi/HrgCe4t+BfglAhCZ/WqkjW
 5r9ycktvHWUA0Njt6ZfMnMzqfXRpSmnqYaNJsAtzcxIpYIgLGElzyFh5U8QTt3gQpo3Nzy+g4ceUQ
 iXs6NbKlb4i6O/GcOOsIY8QQhM1GkbrEMmh4x+FiqsN+4+mmnFaHmCuK8/WFtsz8QOsV1OK/2V1h9
 VLpG8lIW/T4+5L5/FNWxkNzgFGwSykFF//ww3p3CaWhm3AW9mVQpvnkEmfRcRnPQqqsOwzni7Zorm
 Nvzpvcq8A+rS8PGpzID9RQ==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1qBZmW-0004DH-OZ; Tue, 20 Jun 2023 07:44:21 -0400
Date: Tue, 20 Jun 2023 14:44:26 +0300
Message-Id: <837cry73z9.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Eshel Yaron <me@HIDDEN>
In-Reply-To: <m17cry64mg.fsf@HIDDEN> (bug-gnu-emacs@HIDDEN)
Subject: Re: bug#64185: proposal for new function: copy-line
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 <m17cry64mg.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org, zkanfer@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Cc: 64185 <at> debbugs.gnu.org
> Date: Tue, 20 Jun 2023 09:15:51 +0300
> From:  Eshel Yaron via "Bug reports for GNU Emacs,
>  the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN>
> 
> How does this relate to the existing `duplicate-line`?

There's also copy-from-above-command.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at 64185 <at> debbugs.gnu.org:


Received: (at 64185) by debbugs.gnu.org; 20 Jun 2023 06:15:58 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jun 20 02:15:58 2023
Received: from localhost ([127.0.0.1]:57809 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qBUek-0002T2-0W
	for submit <at> debbugs.gnu.org; Tue, 20 Jun 2023 02:15:58 -0400
Received: from mail.eshelyaron.com ([107.175.124.16]:52566 helo=eshelyaron.com)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <me@HIDDEN>) id 1qBUei-0002Su-IC
 for 64185 <at> debbugs.gnu.org; Tue, 20 Jun 2023 02:15:56 -0400
From: Eshel Yaron <me@HIDDEN>
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=eshelyaron.com;
 s=mail; t=1687241755;
 bh=dFawhiSuxXk+QCSBPdWc6b1Z5jZMq1KDxQ/GQEWr5+8=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From;
 b=gXAIz1aqbXnlpJa4k46MKZa+V4AZDgpN4INk/y6vIgEdlxq7029KIFHJo1v9tY62l
 MgV8fhnPpE9lxrA1yNWfFF+l/xyZlKGMO6tdVWlTeLwKdDsdX0fIN/hm+fk7Sjogph
 vdg2a1r/rbdveSk9eo8TD2CL1BmIN5PWXUKum4OyuWYwMdhirlKV7J3SOK4ub7rItj
 s1oOkjvkYMuFbHL6P2NwG1RLGv0r105GC5w3ztBxgsvsSnE2z0WHSjbczQaZqwedfC
 hLCURQYXuNNX4Ddm8T9C5Kv+rnUIimUMxBB4s+OAZPpE7zJ7w6l68QA8o5OJl+7iUk
 T5Z5/uR9Gwn1g==
To: Zachary Kanfer <zkanfer@HIDDEN>
Subject: Re: bug#64185: proposal for new function: copy-line
In-Reply-To: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
 (Zachary Kanfer's message of "Tue, 20 Jun 2023 01:07:54 -0400")
References: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
Date: Tue, 20 Jun 2023 09:15:51 +0300
Message-ID: <m17cry64mg.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 64185
Cc: 64185 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Just a couple of thoughts:

Zachary Kanfer <zkanfer@HIDDEN> writes:

> This proposal is a function that copies the line point is on, duplicating it in the buffer.
>
> I find it useful for both text and code. It makes writing certain types of repetitive things a lot simpler.
>

How does this relate to the existing `duplicate-line`?

> +(defun copy-line (&optional copy-above)
> +  "Copy the line point is on, placing the copy above the current line.
> +
> +With prefix argument COPY-ABOVE, put the copy below the current line."
> +  (interactive "*P")
> +  (let ((line (buffer-substring-no-properties (line-beginning-position) (line-end-position)))
> +        (where-in-line (- (point) (line-beginning-position))))
> +    (if copy-above
> +        (progn (beginning-of-line)
> +               (open-line 1))
> +      (progn (end-of-line)
> +             (insert "\n")))
> +    (insert line)
> +    (goto-char (line-beginning-position))
> +    (forward-char where-in-line))
> +  (set-transient-map
> +   (define-keymap "c" (lambda () (interactive) (copy-line copy-above))))
> +  (message "press c to copy again?"))

I think you can get the same behavior by using `duplicate-line` as follows:

(defun esy/copy-line (&optional copy-above)
  (interactive "*P")
  (duplicate-line)
  (unless copy-above (line-move 1)))




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 20 Jun 2023 05:08:13 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jun 20 01:08:13 2023
Received: from localhost ([127.0.0.1]:57741 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1qBTbB-0000fD-Ae
	for submit <at> debbugs.gnu.org; Tue, 20 Jun 2023 01:08:13 -0400
Received: from lists.gnu.org ([209.51.188.17]:46246)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <zkanfer@HIDDEN>) id 1qBTb9-0000f5-QH
 for submit <at> debbugs.gnu.org; Tue, 20 Jun 2023 01:08:12 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <zkanfer@HIDDEN>) id 1qBTb8-0004SA-DX
 for bug-gnu-emacs@HIDDEN; Tue, 20 Jun 2023 01:08:10 -0400
Received: from mail-oo1-xc34.google.com ([2607:f8b0:4864:20::c34])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <zkanfer@HIDDEN>) id 1qBTb6-0002UT-Fo
 for bug-gnu-emacs@HIDDEN; Tue, 20 Jun 2023 01:08:10 -0400
Received: by mail-oo1-xc34.google.com with SMTP id
 006d021491bc7-55e1a9ff9d4so2186314eaf.1
 for <bug-gnu-emacs@HIDDEN>; Mon, 19 Jun 2023 22:08:06 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20221208; t=1687237685; x=1689829685;
 h=to:subject:message-id:date:from:mime-version:from:to:cc:subject
 :date:message-id:reply-to;
 bh=YFqOdNN7HBM4gx7GQWtP41ihux9HMFzf2IFKCIL18wc=;
 b=BYUar0VUYx3xH7lTaENw5fsQz0TBqh+snHCbrpPnjvrtJODZYZZpw3SeIPwM2vUwuC
 Ewq5oVNpZxUNfL/na7QpHo0FWCJH605p8flI1gBV82HsUX08/JpNn9Fm70Gyyk2oFPG1
 YvBOjvUki+y+1H7x1J1qYqgOAtSZjvXc9hCMZ4D2Jgdyr63ZlQol4m4UNIIYIbHP02kp
 MJhrGpajMn8hRnM5rtcLjndZG035/+tQv6Q5YG1XuJbRmRsMmw1sg8kP/QIxP7hlk52z
 tpw4HKtWOqqeZSGOmVt/JJGGHkDyjG0Tp/rmH81I39Jn37fIEhSqW9YuXbZba6Fhea4s
 xyHQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20221208; t=1687237685; x=1689829685;
 h=to:subject:message-id:date:from:mime-version:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=YFqOdNN7HBM4gx7GQWtP41ihux9HMFzf2IFKCIL18wc=;
 b=cY5IWIBOjXRyk/YlANHF81hWIzyR557tfniWxrQCjdUPBt7cSW0ODooc0EVrpK9LZD
 6326BWrLqtHo+FbP0DRHn+PO9NFkU2a5vg1gCpBMeBZt0sMwBXYLTUGbZwepKoeY4RBf
 gY4RkGG3Lx9MHJ6Q2kgS5EocOFMaDA71k+JytUZsZiR8O5B8/2HttK0F9Myl3bEalfgo
 QiWvCNdGU/mpFFQxSBXQ2iW3hrnEaIgLV8PqfO0kmkiFT7rRWEBBl3mh+SFSAao89myL
 4h9WGh6mbfLLr6pNzY3+5VfPWF5zY/Qtkg5DWnvR0AV8M/ffxN5jk5KoHJMhnkUA2Vgq
 piug==
X-Gm-Message-State: AC+VfDxzOKER0aTgHfdK35xA4EdFGS2fwTg3vR8rKgrVy+op09XbHwyM
 lKNp/ACNeHyTc7zujRQtxm/ExefHFu1a2SdaY4q9sNjqp3NKKw==
X-Google-Smtp-Source: ACHHUZ78qaSntuwbMOQ6SQIPIzFpC+z3Gqk+KhFTZ2bD+wcRZii+oSTjZ4enRVZunVXOC9ob0hXfwn3TWr0c7qeOX30=
X-Received: by 2002:aca:34c5:0:b0:39a:4e9:3767 with SMTP id
 b188-20020aca34c5000000b0039a04e93767mr9025028oia.7.1687237685482; Mon, 19
 Jun 2023 22:08:05 -0700 (PDT)
MIME-Version: 1.0
From: Zachary Kanfer <zkanfer@HIDDEN>
Date: Tue, 20 Jun 2023 01:07:54 -0400
Message-ID: <CAFXT+RPvQ9z=GEuA58O0Lo3wZPbNsJuoh7QuZ9vzFN-Akfd44A@HIDDEN>
Subject: proposal for new function: copy-line
To: bug-gnu-emacs@HIDDEN
Content-Type: multipart/mixed; boundary="000000000000e55b6005fe88a218"
Received-SPF: pass client-ip=2607:f8b0:4864:20::c34;
 envelope-from=zkanfer@HIDDEN; helo=mail-oo1-xc34.google.com
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,
 HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: -1.3 (-)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.3 (--)

--000000000000e55b6005fe88a218
Content-Type: multipart/alternative; boundary="000000000000e55b5a05fe88a216"

--000000000000e55b5a05fe88a216
Content-Type: text/plain; charset="UTF-8"

This proposal is a function that copies the line point is on, duplicating
it in the buffer.

I find it useful for both text and code. It makes writing certain types of
repetitive things a lot simpler.

--000000000000e55b5a05fe88a216
Content-Type: text/html; charset="UTF-8"

<div dir="ltr">This proposal is a function that copies the line point is on, duplicating it in the buffer.<br><br><div>I find it useful for both text and code. It makes writing certain types of repetitive things a lot simpler.<br></div></div>

--000000000000e55b5a05fe88a216--

--000000000000e55b6005fe88a218
Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Add-copy-line-function.patch"
Content-Disposition: attachment; 
	filename="0001-Add-copy-line-function.patch"
Content-Transfer-Encoding: base64
Content-ID: <f_lj3tp21x0>
X-Attachment-Id: f_lj3tp21x0

RnJvbSA4ODNmNGRhYzMxZjRjNzhjZGM1ZGQ0NjIyYTBiMTEwMDQ1ODQwYmQ5IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBaYWNoYXJ5IEthbmZlciA8emthbmZlckBnbWFpbC5jb20+CkRh
dGU6IFR1ZSwgMjAgSnVuIDIwMjMgMDE6MDQ6NDcgLTA0MDAKU3ViamVjdDogW1BBVENIXSBBZGQg
Y29weS1saW5lIGZ1bmN0aW9uCgoqIGxpc3Avc2ltcGxlLmVsIChjb3B5LWxpbmUpOiBBZGQgdGhl
IGNvcHktbGluZSBmdW5jdGlvbiBpdHNlbGYuCiogdGVzdC9saXNwL3NpbXBsZS10ZXN0cy5lbCAo
c2ltcGxlLXRlc3RzLXphcC10by1jaGFyKTogVGVzdHMgZm9yIHRoaXMKbmV3IGZ1bmN0aW9uLgoq
IGV0Yy9ORVdTOiBVcGRhdGUKLS0tCiBldGMvTkVXUyAgICAgICAgICAgICAgICAgIHwgIDQgKysr
KwogbGlzcC9zaW1wbGUuZWwgICAgICAgICAgICB8IDIwICsrKysrKysrKysrKysrKysrKwogdGVz
dC9saXNwL3NpbXBsZS10ZXN0cy5lbCB8IDQ0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCA2OCBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0
IGEvZXRjL05FV1MgYi9ldGMvTkVXUwppbmRleCA2MWU2ZTE2MTY2NS4uZmUzZDY4YjFiOWUgMTAw
NjQ0Ci0tLSBhL2V0Yy9ORVdTCisrKyBiL2V0Yy9ORVdTCkBAIC02NjUsNiArNjY1LDEwIEBAIFRo
ZWlyICdub2Vycm9yJyBhcmd1bWVudHMgaGF2ZSBubyBlZmZlY3QgYW5kIGFyZSB0aGVyZWZvcmUg
b2Jzb2xldGUuCiBUaGlzIGZ1bmN0aW9uIGV2YWx1YXRlcyBhIGNvbW1hbmQncyBpbnRlcmFjdGl2
ZSBmb3JtIGFuZCByZXR1cm5zIHRoZQogcmVzdWx0YW50IGxpc3QuCiAKKyoqIE5ldyBmdW5jdGlv
biAnY29weS1saW5lJyBpbiB0aGUgc2ltcGxlIGxpYnJhcnkuCitUaGlzIGZ1bmN0aW9uIGNvcGll
cyB0aGUgY3VycmVudCBsaW5lLCBpbnNlcnRpbmcgaXQgYmVmb3JlIChvciwgd2l0aAorcHJlZml4
IGFyZ3VtZW50LCBhZnRlcikgcG9pbnQuCisKIAwKICogQ2hhbmdlcyBpbiBFbWFjcyAzMC4xIG9u
IE5vbi1GcmVlIE9wZXJhdGluZyBTeXN0ZW1zCiAKZGlmZiAtLWdpdCBhL2xpc3Avc2ltcGxlLmVs
IGIvbGlzcC9zaW1wbGUuZWwKaW5kZXggZTA4YmY0ZmRkNjQuLjBjMmNkMmJhOTNhIDEwMDY0NAot
LS0gYS9saXNwL3NpbXBsZS5lbAorKysgYi9saXNwL3NpbXBsZS5lbApAQCAtMTA5NzcsNiArMTA5
NzcsMjYgQEAgbGF4LXBsaXN0LXB1dAogICAocGxpc3QtcHV0IHBsaXN0IHByb3AgdmFsICMnZXF1
YWwpKQogDAogCisoZGVmdW4gY29weS1saW5lICgmb3B0aW9uYWwgY29weS1hYm92ZSkKKyAgIkNv
cHkgdGhlIGxpbmUgcG9pbnQgaXMgb24sIHBsYWNpbmcgdGhlIGNvcHkgYWJvdmUgdGhlIGN1cnJl
bnQgbGluZS4KKworV2l0aCBwcmVmaXggYXJndW1lbnQgQ09QWS1BQk9WRSwgcHV0IHRoZSBjb3B5
IGJlbG93IHRoZSBjdXJyZW50IGxpbmUuIgorICAoaW50ZXJhY3RpdmUgIipQIikKKyAgKGxldCAo
KGxpbmUgKGJ1ZmZlci1zdWJzdHJpbmctbm8tcHJvcGVydGllcyAobGluZS1iZWdpbm5pbmctcG9z
aXRpb24pIChsaW5lLWVuZC1wb3NpdGlvbikpKQorICAgICAgICAod2hlcmUtaW4tbGluZSAoLSAo
cG9pbnQpIChsaW5lLWJlZ2lubmluZy1wb3NpdGlvbikpKSkKKyAgICAoaWYgY29weS1hYm92ZQor
ICAgICAgICAocHJvZ24gKGJlZ2lubmluZy1vZi1saW5lKQorICAgICAgICAgICAgICAgKG9wZW4t
bGluZSAxKSkKKyAgICAgIChwcm9nbiAoZW5kLW9mLWxpbmUpCisgICAgICAgICAgICAgKGluc2Vy
dCAiXG4iKSkpCisgICAgKGluc2VydCBsaW5lKQorICAgIChnb3RvLWNoYXIgKGxpbmUtYmVnaW5u
aW5nLXBvc2l0aW9uKSkKKyAgICAoZm9yd2FyZC1jaGFyIHdoZXJlLWluLWxpbmUpKQorICAoc2V0
LXRyYW5zaWVudC1tYXAKKyAgIChkZWZpbmUta2V5bWFwICJjIiAobGFtYmRhICgpIChpbnRlcmFj
dGl2ZSkgKGNvcHktbGluZSBjb3B5LWFib3ZlKSkpKQorICAobWVzc2FnZSAicHJlc3MgYyB0byBj
b3B5IGFnYWluPyIpKQorDAorCiAocHJvdmlkZSAnc2ltcGxlKQogCiA7Ozsgc2ltcGxlLmVsIGVu
ZHMgaGVyZQpkaWZmIC0tZ2l0IGEvdGVzdC9saXNwL3NpbXBsZS10ZXN0cy5lbCBiL3Rlc3QvbGlz
cC9zaW1wbGUtdGVzdHMuZWwKaW5kZXggN2RhYmI3MzU1MjIuLmQ0MTllMzQ5M2FiIDEwMDY0NAot
LS0gYS90ZXN0L2xpc3Avc2ltcGxlLXRlc3RzLmVsCisrKyBiL3Rlc3QvbGlzcC9zaW1wbGUtdGVz
dHMuZWwKQEAgLTEwNDYsNSArMTA0Niw0OSBAQCBzaW1wbGUtdGVzdHMtemFwLXRvLWNoYXIKICAg
ICAod2l0aC16YXAtdG8tY2hhci10ZXN0ICJhYmNkZUNYWVoiICJYWVoiCiAgICAgICAoemFwLXRv
LWNoYXIgMSA/QyAnaW50ZXJhY3RpdmUpKSkpCiAKKzs7OyBUZXN0cyBmb3IgYGNvcHktbGluZScK
KworKGVydC1kZWZ0ZXN0IGNvcHktdGVzdC0tY29weS1kb3duLS1jaGVjay10ZXh0ICgpCisgIChz
aG91bGQgKGVxdWFsICh3aXRoLXRlbXAtYnVmZmVyCisgICAgICAgICAgICAgICAgICAgKGluc2Vy
dCAiYVxuYlxuYyIpCisgICAgICAgICAgICAgICAgICAgKHByZXZpb3VzLWxpbmUpCisgICAgICAg
ICAgICAgICAgICAgKGNvcHktbGluZSkKKyAgICAgICAgICAgICAgICAgICAoYnVmZmVyLXN0cmlu
ZykpCisgICAgICAgICAgICAgICAgICJhXG5iXG5iXG5jIikpKQorCisoZXJ0LWRlZnRlc3QgY29w
eS10ZXN0LS1jb3B5LWRvd24tLWNoZWNrLXBvaW50ICgpCisgIChzaG91bGQgKGVxdWFsICh3aXRo
LXRlbXAtYnVmZmVyCisgICAgICAgICAgICAgICAgICAgKGluc2VydCAiYVxuYlxuYyIpCisgICAg
ICAgICAgICAgICAgICAgKHByZXZpb3VzLWxpbmUpCisgICAgICAgICAgICAgICAgICAgKGNvcHkt
bGluZSkKKyAgICAgICAgICAgICAgICAgICAocG9pbnQpKQorICAgICAgICAgICAgICAgICA2KSkp
CisKKyhlcnQtZGVmdGVzdCBjb3B5LXRlc3QtLWNvcHktdXAtLWNoZWNrLXBvaW50ICgpCisgIChz
aG91bGQgKGVxdWFsICh3aXRoLXRlbXAtYnVmZmVyCisgICAgICAgICAgICAgICAgICAgKGluc2Vy
dCAiYVxuYlxuYyIpCisgICAgICAgICAgICAgICAgICAgKHByZXZpb3VzLWxpbmUpCisgICAgICAg
ICAgICAgICAgICAgKGNvcHktbGluZSB0KQorICAgICAgICAgICAgICAgICAgIChwb2ludCkpCisg
ICAgICAgICAgICAgICAgIDQpKSkKKworKGVydC1kZWZ0ZXN0IGNvcHktdGVzdC0tY29weS1kb3du
LS1taWRkbGUtb2YtbGluZS0tY2hlY2stdGV4dCAoKQorICAoc2hvdWxkIChlcXVhbCAod2l0aC10
ZW1wLWJ1ZmZlcgorICAgICAgICAgICAgICAgICAgIChpbnNlcnQgImFcbmIgYyBkIGVcbmYiKQor
ICAgICAgICAgICAgICAgICAgIChiZWdpbm5pbmctb2YtbGluZSAtMSkKKyAgICAgICAgICAgICAg
ICAgICAoZm9yd2FyZC1jaGFyIDQpCisgICAgICAgICAgICAgICAgICAgKGNvcHktbGluZSkKKyAg
ICAgICAgICAgICAgICAgICAoYnVmZmVyLXN0cmluZykpCisgICAgICAgICAgICAgICAgICJhXG5i
IGMgZCBlXG5iIGMgZCBlXG5mIikpKQorCisoZXJ0LWRlZnRlc3QgY29weS10ZXN0LS1jb3B5LWRv
d24tLW1pZGRsZS1vZi1saW5lLS1jaGVjay1wb2ludCAoKQorICAoc2hvdWxkIChlcXVhbCAod2l0
aC10ZW1wLWJ1ZmZlcgorICAgICAgICAgICAgICAgICAgIChpbnNlcnQgImFcbmIgYyBkIGVcbmYi
KQorICAgICAgICAgICAgICAgICAgIChiZWdpbm5pbmctb2YtbGluZSAwKQorICAgICAgICAgICAg
ICAgICAgIChmb3J3YXJkLWNoYXIgNCkKKyAgICAgICAgICAgICAgICAgICAoY29weS1saW5lKQor
ICAgICAgICAgICAgICAgICAgIChwb2ludCkpCisgICAgICAgICAgICAgICAgIDE1KSkpCisKIChw
cm92aWRlICdzaW1wbGUtdGVzdCkKIDs7OyBzaW1wbGUtdGVzdHMuZWwgZW5kcyBoZXJlCi0tIAoy
LjQwLjEKCg==
--000000000000e55b6005fe88a218--




Acknowledgement sent to Zachary Kanfer <zkanfer@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs@HIDDEN. Full text available.
Report forwarded to bug-gnu-emacs@HIDDEN:
bug#64185; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Mon, 4 Sep 2023 08:30:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.