From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Barry OReilly Newsgroups: gmane.emacs.help Subject: Editing Lisp and cycling through indentation levels Date: Thu, 11 Jul 2013 15:30:05 -0400 Message-ID: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-Trace: ger.gmane.org 1373571021 5466 80.91.229.3 (11 Jul 2013 19:30:21 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 11 Jul 2013 19:30:21 +0000 (UTC) To: help-gnu-emacs Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Thu Jul 11 21:30:23 2013 Return-path: Envelope-to: geh-help-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 1UxMZK-0003MZ-DX for geh-help-gnu-emacs@m.gmane.org; Thu, 11 Jul 2013 21:30:22 +0200 Original-Received: from localhost ([::1]:48901 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UxMZJ-0000NB-JG for geh-help-gnu-emacs@m.gmane.org; Thu, 11 Jul 2013 15:30:21 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:60560) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UxMZ9-0000JR-4d for help-gnu-emacs@gnu.org; Thu, 11 Jul 2013 15:30:13 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UxMZ4-0003gG-WB for help-gnu-emacs@gnu.org; Thu, 11 Jul 2013 15:30:11 -0400 Original-Received: from mail-oa0-x231.google.com ([2607:f8b0:4003:c02::231]:52942) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UxMZ4-0003eh-QH for help-gnu-emacs@gnu.org; Thu, 11 Jul 2013 15:30:06 -0400 Original-Received: by mail-oa0-f49.google.com with SMTP id n9so11704817oag.22 for ; Thu, 11 Jul 2013 12:30:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=4L5cybaPS5jfZe4rikPJE3LBGI39ZsjJ3U0qiYOz/rs=; b=L2EqjsAnZTaVWISEsvQIt/ffXZp8k3aFwJ3dhbOn/cpkgAdtJwa6RG93uRcapuWUHS O87Pb7ck5og0qJ3QN7LHf+/4g7zXW7GTCn/r8Sk69lNeAK0tsHHv8qjqbkAfMIIJrBGv Z78Pc2i1p+/N9Wgv8P9ZHzACwct7rGwIhv9NjI/tiyuecGUY/r7MOhmWj9gC/43OFeaN XGsmcU4UFfK+3RholfjnXWnvVMmKXeiX1XlwP7ht/sykk1K3BephRI617eKXezZ+l8hQ dOdTp3uMDEXsx/faL5WDT9gLb3xmU9rAxoXLmeYSYn2Cyv/sah2liQ8BNFC0XIV2drNN gsFQ== X-Received: by 10.182.205.138 with SMTP id lg10mr33060214obc.6.1373571005947; Thu, 11 Jul 2013 12:30:05 -0700 (PDT) Original-Received: by 10.76.122.79 with HTTP; Thu, 11 Jul 2013 12:30:05 -0700 (PDT) X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2607:f8b0:4003:c02::231 X-Content-Filtered-By: Mailman/MimeDel 2.1.14 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:92063 Archived-At: Is there an Emacs mode that would allow me to do the following kind of Lisp editing? Let | indicate point and comments indicate key presses. (defun func () (let ((x 10) (y (some-func 20)))))| ;; RET (defun func () (let ((x 10) (y (some-func 20))))) | ;; TAB (defun func () (let ((x 10) (y (some-func 20)))) |) ;; 4 more TAB (defun func () (let ((x 10) (y (some-func 20 |))))) ;; 3 DEL (defun func () (let ((x 10) (y (some-func 20))) |)) Another example: (defun func () (let ((x 10) (y (some-func 20)))| (message "Inside func"))) ;; RET (defun func () (let ((x 10) (y (some-func 20))) | (message "Inside func"))) ;; DEL (defun func () (let ((x 10) (y (some-func 20)))) | (message "Inside func")) ;; What should happen when TAB here is debatable The idea is being able to cycle through indentation levels and have the parenthesis and code automatically adjust themselves to be consistent with the changing indentation.