From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.bugs Subject: bug#8196: 23.1; Feature request with code: "C-x TAB" to understand tab-stop-list Date: Fri, 12 Jul 2013 14:18:27 -0700 (PDT) Message-ID: <9e30b1da-e346-420f-9d60-698925e50a59@default> References: <87d3m2equ6.fsf@imladris.arda> <87oba74rww.fsf@mithlond.arda> <2b9b23f3-8622-4a4e-847f-a2f751c2c881@default> <87k3kv4k9f.fsf@mithlond.arda> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1373663947 14141 80.91.229.3 (12 Jul 2013 21:19:07 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 12 Jul 2013 21:19:07 +0000 (UTC) Cc: 8196@debbugs.gnu.org To: Teemu Likonen Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Fri Jul 12 23:19:08 2013 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Uxkk7-0006po-Le for geb-bug-gnu-emacs@m.gmane.org; Fri, 12 Jul 2013 23:19:07 +0200 Original-Received: from localhost ([::1]:45863 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Uxkk7-00031r-5o for geb-bug-gnu-emacs@m.gmane.org; Fri, 12 Jul 2013 17:19:07 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:51975) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Uxkk3-00031P-M1 for bug-gnu-emacs@gnu.org; Fri, 12 Jul 2013 17:19:05 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Uxkk2-0000ku-Iu for bug-gnu-emacs@gnu.org; Fri, 12 Jul 2013 17:19:03 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:56969) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Uxkk2-0000kp-Gi for bug-gnu-emacs@gnu.org; Fri, 12 Jul 2013 17:19:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1Uxkk1-0007io-QC for bug-gnu-emacs@gnu.org; Fri, 12 Jul 2013 17:19:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 12 Jul 2013 21:19:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 8196 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 8196-submit@debbugs.gnu.org id=B8196.137366392029617 (code B ref 8196); Fri, 12 Jul 2013 21:19:01 +0000 Original-Received: (at 8196) by debbugs.gnu.org; 12 Jul 2013 21:18:40 +0000 Original-Received: from localhost ([127.0.0.1]:51285 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Uxkjf-0007hc-LI for submit@debbugs.gnu.org; Fri, 12 Jul 2013 17:18:40 -0400 Original-Received: from userp1040.oracle.com ([156.151.31.81]:21071) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Uxkjd-0007hK-3P for 8196@debbugs.gnu.org; Fri, 12 Jul 2013 17:18:37 -0400 Original-Received: from acsinet21.oracle.com (acsinet21.oracle.com [141.146.126.237]) by userp1040.oracle.com (Sentrion-MTA-4.3.1/Sentrion-MTA-4.3.1) with ESMTP id r6CLIUGN018544 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Fri, 12 Jul 2013 21:18:31 GMT Original-Received: from userz7021.oracle.com (userz7021.oracle.com [156.151.31.85]) by acsinet21.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id r6CLISrQ025051 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Fri, 12 Jul 2013 21:18:29 GMT Original-Received: from abhmt108.oracle.com (abhmt108.oracle.com [141.146.116.60]) by userz7021.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id r6CLISNE028546; Fri, 12 Jul 2013 21:18:28 GMT In-Reply-To: <87k3kv4k9f.fsf@mithlond.arda> X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.7 (607090) [OL 12.0.6668.5000 (x86)] X-Source-IP: acsinet21.oracle.com [141.146.126.237] X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:76300 Archived-At: > http://lists.gnu.org/archive/html/help-gnu-emacs/2011-03/msg00243.html OK, so you take as the reference column the indentation of the leftmost line. Without some such specification what you described earlier was incomplete. > Here's a concrete use-case.... My point is that this does not belong in `indent-rigidly'. Create a new command for it. That's all. `indent-rigidly' is a very old function that is used not only interactively but in Lisp code. There's no telling how much existing code out there might use the fact that ARG =3D nil indents one column. > The feature supersedes indent-rigidly. I don't think so. And I hope not. It is a different function. Superseding means nothing useful is lost. In this case what is lost is the default behavior (ARG =3D nil) that you are replacing. Depending on the context and the user, that lost behavior is at least as useful as its replacement. What you can propose instead is that your new command get the traditional binding for `indent-rigidly', `C-x TAB'. What we should not do is replace the current `indent-rigidly' behavior by the proposed behavior in the same command. Steal the key, perhaps, but not the command. A mix would also be possible, but less desirable IMO: modify `indent-rigidly' to provide the new behavior only interactively, never when used in code. That has the disadvantage of not letting code take advantage of the indentation-to-tab-stop behavior. I think it best to provide a separate command. A separate command also lets any user who prefers the current default behavior interactively to bind `indent-rigidly', instead of your command, to `C-x TAB'. You find it handy to indent to a tab stop by default (ARG =3D nil), and then repeat (e.g., C-x z z z z). Someone else might find it handier to indent one column instead of one tab stop by default, and then repeat to indent the region incrementally. FWIW, I would no doubt do that (but that has nothing to do with why I replied to this thread), since I never use tab stops and I do indent regions rigidly and incrementally. Just one opinion. Two separate commands provide more options for users, including Lisp coders. I do not object to your appropriating `C-x TAB' for the new command. But please do not touch the existing command. I would also suggest polling the users wrt the key binding. It's not obvious a priori that more people will want to indent via tab stops.